我使用两个日期选择器来选择日期范围,我有以下问题:
当我在 datepicker I 上选择“开始日期”时,我会在第二个上更新 minDate (类似于选择“结束日期”时我更新 maxDate < / em>在第一个)。
问题是,更新 maxDate 或 minDate 会导致更新datepicker。
因此,例如,如果有人在 datepicker II 上浏览数月,然后在 datepicker I 上选择某个日期,则 datepicker II 将刷新并且显示屏返回 datepicker II 上的最后一个选定日期,而不是停留在用户正在浏览的月份。
我已经知道如何通过使用“onChangeMonthYear”选项找出最后一次显示在datepicker上的月份。
问题是如何强制使用datepicker导航到我想要的月份(不实际更改所选日期)。
我真的很感激任何帮助或建议。
代码,根据要求。我正在使用AngularJS,但我想您可以很容易地看到它将如何转换为JQuery:
scope.fromDate.onChangeMonthYear = function(year, month){
//saving info about date I
};
scope.toDate.onChangeMonthYear = function(year, month){
//saving info about date II
};
scope.fromDate.onSelect = function(selectedDate) {
element.find(".date-to").datepicker("option", "minDate", selectedDate);
};
scope.toDate.onSelect = function(selectedDate) {
element.find(".date-from").datepicker("option", "maxDate", selectedDate);
};
答案 0 :(得分:1)
根据jquery ui datepicker api参考:
// getter
var minDate = $( ".selector" ).datepicker( "option", "minDate" );
// setter
$( ".selector" ).datepicker( "option", "minDate", new Date(2007, 1 - 1, 1) );
这应该在初始化之后使用,而不重新设置datepicker