我正在尝试连接 2 个日期选择器以允许用户选择日期范围。
我创建了这样的代码:
$(function() {
var dates = $("#fromDate, #toDate").datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true,
minDate: new Date(2010, 2 - 1, 2),
onSelect: function(selectedDate) {
var option = this.id == "fromDate" ? "minDate" : "maxDate",
instance = $(this).data("datepicker"),
date = $.datepicker.parseDate(
instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
dates.not(this).datepicker("option", option, date);
}
});
});
这工作正常,但我收到奇怪的错误:
当我使用第一个输入选择第二个日期时,日期选择器显示第二个输入的日期。
我认为 onSelect 函数以某种方式根据第二个日期选择器设置日期。
如果第一个日期选择器的日期与第二个日期选择器在同一个月,则不会显示此错误。
如何重现此行为:
- 在第一个日期选择器中选择“2010-02-05”(单击第二个日期选择器的日期后,年份字段更改为第二个日期选择器中的月份和年份)
这是我的 jsFiddle:http://jsfiddle.net/Misiu/TyQSG/1/ http://jsfiddle.net/Misiu/TyQSG/1/
我该如何改变onSelect
功能来消除这个错误?