0

遺漏的類型錯誤的財產「的getTime」:無法讀取的不確定
財產「的getTime」你可以找到錯誤日誌here引導datetimepicker-遺漏的類型錯誤:無法讀取未定義

$('.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" 
    }); 
); 

插入彈出窗口

$('#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'); 
}); 

我想時間格式的問題,而是通過jQuery的值會在錯誤發生後發出。

+0

請分享您的代碼小提琴 – Aslam

回答

0

Uncaught TypeError: Cannot read property "getTime" of undefined

當你沒有包含jQuery UI插件時拋出此錯誤。
除了jQuery插件之外,請確保將其包含在項目中的任何其他腳本之前。

+0

但在其他頁面上,同樣的代碼就可以了。我猜這是jQuery衝突,但也被拒絕 –

+2

儘管在其他頁面中可以使用相同的代碼,但對於此頁面,jQuery調用jQuery庫的層次結構可能會有所不同。因此,由於jQuery庫導入的順序,可能相同的代碼在此頁面中失敗。 – Lahiru

+0

我發現問題了,是問題的時間格式,用json.value加去,但會給出,我現在需要解決時間格式問題 –

1

在自舉-datetimepicker.js是:

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

但是當設置例如輸入的值:12:15然後d是未定義的。你可以在你的代碼重寫GETUTCDATE功能或改變,如果到:

d === null || typeof d ==='undefined' 
相關問題