0

Uncaught Typeerror lesen: Kann nicht das Objekt „getTime“ undefinierter
lesen Sie können das Fehlerprotokoll here finden.Bootstrap datetimepicker- Uncaught Typeerror: Kann nicht das Objekt „getTime“ undefinierten

$('.modal-body').on("focus","#date",function() { 
    var date = $('#date').val(); 
    $('#date').datetimepicker({ 
     defaultDate: date, 
     language: 'zh-CN', 
     pickDate: true, 
     pickTime: true, 
     autoclose: true, 
     format: 'yyyy-mm-dd', 
     todayBtn: true, 
     minView: 2, 
     startView: 3, 
     pickerPosition: "bottom-left" 
    }); 
); 

in das Pop-up-Fenster

$('#edit').click(function(){ 
    $.ajax({ 
     url: "{:U('SystemSettingMgt/settingConf')}", 
     type: 'post', 
     data: { 
      'id' : $(this).siblings('input').val(), 
      'is_active' : 1, 
     }, 
     success:function(json){ 
      $('.modal-body').children().empty(); 
      var str = ''; 
      switch(json.datatype){ 
       // yes/false 
       case "1": 
        str += '<label>select setting</label>'; 
        str += '<input type="hidden" id="id" value="'+json.id+'">'; 
        str += '<input type="hidden" id="datatype" value="'+json.datatype+'">'; 
        str += '<select name="value" id="value" class="form-control">'; 
        if (json.value == 1) { 
         str += '<option value="1" selected>yes</option>'; 
         str += '<option value="0"false</option>'; 
        }else if(json.value == 0){ 
         str += '<option value="1">yes</option>'; 
         str += '<option value="0" selected>false</option>'; 
        } 
        str += '</select>'; 
        $('.modal-body').children().append(str); 
        break; 

       // enter string 
       case "2": 
        str += '<label>enter setting</label>'; 
        str += '<input type="hidden" id="id" value="'+json.id+'">'; 
        str += '<input type="hidden" id="datatype" value="'+json.datatype+'">'; 
        str += '<input name="value" id="value" class="form-control" value="'+json.value+'">'; 
        $('.modal-body').children().append(str); 
        break; 

       // enter num 
       case "3": 
        str += '<label>select setting</label>'; 
        str += '<input type="hidden" id="id" value="'+json.id+'">'; 
        str += '<input type="hidden" id="datatype" value="'+json.datatype+'">'; 
        str += '<input type="text" id="value" value="'+json.value+'" name="value" class="form-control" placeholder="设定值" onkeyup="if(! /^\d+$/.test(this.value)){this.placeholder='+'只能整数'+';this.value='+';}">'; 
        $('.modal-body').children().append(str); 
        break; 

       // select date 
       case "4": 
        str += '<label>select setting</label>'; 
        str += '<input type="hidden" id="id" value="'+json.id+'">'; 
        str += '<input type="hidden" id="datatype" value="'+json.datatype+'">'; 
        str += '<input type="text" id="date" name="value" class="form-control date" placeholder="select date" value="'+json.value+'">'; 
        $('.modal-body').children().append(str); 
        break; 

       // date 
       case "5": 
        str += '<label>change setting</label>'; 
        str += '<input type="hidden" id="id" value="'+json.id+'">'; 
        str += '<input type="hidden" id="datatype" value="'+json.datatype+'">'; 
        str += '<input type="text" data-date-format="hh:ii" id="time" name="value" class="form-control date" placeholder="select time" value="'+json.value+'">'; 
        $('.modal-body').children().append(str); 
        break; 

       // select 
       case "6": 
        str += '<label>change setting</label>'; 
        str += '<input type="hidden" id="id" value="'+json.id+'">'; 
        str += '<input type="hidden" id="datatype" value="'+json.datatype+'">'; 
        str += '<select name="datasource" id="value" class="form-control">'; 
        for(i = 0; i < json.datasource.length; i++){ 
         str += '<option value="'+i+'">'+json.datasource[i]+'</option>'; 
        } 
        str += '</select>'; 
        $('.modal-body').children().append(str); 
        break; 
       } 
     } 
    }); 
    $('#editSetting').modal('show'); 
}); 

mir das Zeitformat erraten Eingefügt das Problem ist, sondern durch den jQuery-Wert wird nach dem Fehler gegeben werden.

+0

Bitte Code Geige teilen – Aslam

Antwort

0

Uncaught TypeError: Cannot read property "getTime" of undefined

Dieser Fehler wird ausgegeben, wenn Sie das jQuery UI-Plug-in nicht hinzugefügt haben.
Stellen Sie sicher, dass Sie es vor allen anderen Skripts in Ihrem Projekt einschließen, außer nach dem jQuery-Plugin.

+0

Aber auch auf anderen Seiten, die denselben Code ist in Ordnung. Ich denke, es war jquery Konflikt, aber auch abgelehnt –

+2

Auch wenn der gleiche Code in Ordnung auf den anderen Seiten ist, kann für diese Seite die Hierarchie der jQuery Aufrufe an die jQuery-Bibliothek unterschiedlich sein. Es ist daher möglich, dass derselbe Code auf dieser Seite aufgrund der Reihenfolge der jQuery-Bibliotheksimporte fehlschlägt. – Lahiru

+0

Ich habe das Problem gefunden, ist das Zeitformat des Problems, mit json.value plus gehen, aber wird gegeben werden, muss ich jetzt das Problem des Zeitformats lösen –

1

In Bootstrap-datetimepicker.js ist:

getDate: function() { 
     var d = this.getUTCDate(); 
     if (d === null) { 
     return null; 
     } 
     return new Date(d.getTime() + (d.getTimezoneOffset() * 60000)); 
    }, 

aber als Wert der Eingangsbeispielsweise festgelegt ist: 12.15 dann d undefiniert. Sie können getUTCDate Funktion in Ihrem Code außer Kraft setzen oder ändern, wenn an:

d === null || typeof d ==='undefined' 
Verwandte Themen