2012-11-07 61 views
0

我試圖使用jQuery-Timepicker-Addon by Trent Richardson並可能發現了一個錯誤,但是我想要在這裏發帖以查看是否有人看到我做錯的事。jQuery-Timepicker-Addon刪除預裝日期的時間

我有一個開始日期/時間和結束日期/時間字段,並試圖同步它們以根據選擇更新minDate/maxDate。當頁面加載時,這兩個文本字段可能已經填充,這似乎是導致我出現問題的原因。

這裏是我的問題的工作示例:http://jsfiddle.net/eQmsw/3/

這裏是內聯代碼:

<input id="start" type="text" size="30" value="11/14/2012 02:45 PM" /> <input id="end" type="text" size="30" value="11/28/2012 12:00 AM" />​

$(function() { 
    var startDate = new Date(2012,10,14,14,45,0,0); 
    var endDate = new Date(2012,10,28,0,0,0,0); 
    var startDatePicker = $('#start'); 
    var endDatePicker = $('#end'); 
    startDatePicker.datetimepicker({ 
     defaultDate: startDate, 
     maxDate: endDate, 
     showButtonPanel: true, 
     changeMonth: true, 
     changeYear: true, 
     showOtherMonths: true, 
     selectOtherMonths: true, 
     ampm: true, 
     stepMinute: 15, 
     timeFormat: 'hh:mm TT', 
     onSelect: function(selectedDateTime) { 
      var minDate = startDatePicker.datetimepicker('getDate'); 
      endDatePicker.datetimepicker('option', 'minDate', minDate); 
     } 
    }); 
    endDatePicker.datetimepicker({ 
     defaultDate: endDate, 
     minDate: startDate, 
     showButtonPanel: true, 
     changeMonth: true, 
     changeYear: true, 
     showOtherMonths: true, 
     selectOtherMonths: true, 
     ampm: true, 
     stepMinute: 15, 
     timeFormat: 'hh:mm TT', 
     onSelect: function(selectedDateTime) { 
      var maxDate = endDatePicker.datetimepicker('getDate'); 
      startDatePicker.datetimepicker('option', 'maxDate', maxDate); 
     } 
    }); 
});​ 

如果更改一個日期外,其他的時間被刪除。一旦您更改了一個日期,並在刪除時間後修復了另一個日期,則所有其他更改均按預期工作。我將每個的'defaultDate'屬性設置爲與其初始值相對應的日期。在現實生活中,我實際上解析日期字符串,但認爲這會更清楚。

我也會在github網站上的項目問題列表中發佈這個項目,但是希望在大多數人面前得到這個。

在此先感謝您的幫助!

回答

4

嗯,我發現了一些可行的方法。我猜'defaultDate'選項不能像我期待的那樣工作。如果它在初始化之後在datetimepicker上設置了日期,它就會起作用。

startDatePicker.datetimepicker('setDate', startDate); 
endDatePicker.datetimepicker('setDate', endDate); 
+0

這可能是2歲左右,但你只是救了我很多。謝謝!!! – BooBailey

+0

很高興幫助! – ShatyUT