我正在尝试使用jQuery-Timepicker-Addon by Trent Richardson并且可能发现了一个错误,但我想在这里发帖看看是否有人看到我做错了。
我有一个开始日期/时间和结束日期/时间字段,我正在尝试同步它们以根据选择更新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网站上的问题列表中发布这个项目,但是想在大多数人面前这样做。
提前感谢您的帮助!
答案 0 :(得分:4)
好吧,我找到了有用的东西。我想'defaultDate'选项不能像我期望的那样工作。如果它在初始化后在datetimepicker上设置了日期,则可以正常工作。
startDatePicker.datetimepicker('setDate', startDate);
endDatePicker.datetimepicker('setDate', endDate);