2010-08-16 106 views
0

它是jQuery UI中的錯誤嗎?當我撥打.datepicker('setDate', date);date是一個帶時間的日期對象時,datepicker會將date的時間設置爲0:00?jQueryUI datepicker('setDate')刪除時間

如果我克隆可變..

var datewithtime = new Date(); 
var lTmpDate = datewithtime; 
$('#Modal_KalendarTermin #DP_DatumVon').datepicker("setDate", lTmpDate); 

.. datewithtime是一樣的(無時間 - 僅日期與時間= 0:00)。

我在jquery-ui.js - > serach找到了「_setDate: function」的第三個參數「noChange」。爲了什麼?從jQuery的ui.js

/* Set the date(s) directly. */ 
_setDate: function(inst, date, noChange) { 
    var clear = !(date); 
    var origMonth = inst.selectedMonth; 
    var origYear = inst.selectedYear; 
    date = this._restrictMinMax(inst, this._determineDate(inst, date, new Date())); 
    inst.selectedDay = inst.currentDay = date.getDate(); 
    inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth(); 
    inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear(); 
    if ((origMonth != inst.selectedMonth || origYear != inst.selectedYear) && !noChange) 
     this._notifyChange(inst); 
    this._adjustInstDate(inst); 
    if (inst.input) { 
     inst.input.val(clear ? '' : this._formatDate(inst)); 
    } 
}, 

謝謝您的回答和對不起我的英文不好

摘錄!

回答

0

jQuery UI日期選擇器只處理日期。從您鏈接的代碼中可以看到,傳遞到setDate的日期僅用於設置currentDay,currentMonthcurrentYear的值。所有其他日期信息將按設計放棄。

noChange參數是一個標誌,可能只用於內部,用於確定在值更改時是否調用notifyChange