我正在使用最新的jquery(2.0.3)和jquery ui(v1.10.3)。以下是我初始化datepicker的设置:
$("#datepicker").datepicker({
numberOfMonths: 2,
minDate: 0,
maxDate: 40,
onSelect: function(selectedDate) {
$(this).datepicker('option', 'minDate', selectedDate);
},
});
正如您所知,我为datepicker显示了两个月。当我在当月选择日期时,一切都很好。
但是当我在第二个月选择日期时,所选日期会移到第一个日期(因为更新状态?)。我不想要这种行为,我只想在第二个月选择日期。是否可以禁用此刷新状态?
编辑: 为了避免混淆,我需要一个内联日期选择器(当你选择一个日期时不会消失)
答案 0 :(得分:0)
您可以使用onClose
功能检查所选日期是否与开始日期的同一个月相同。
如果没有,您可以将选项showCurrentAtPos
设置为1,这样您的datepicker会将当前所选日期显示为第二个日期选择器。
快速参考:
通过numberOfMonths选项显示多个月时, showCurrentAtPos选项定义显示当前位置 月份。
代码:
$("#datepicker").datepicker({
numberOfMonths: [2, 1],
minDate: 0,
maxDate: 40,
onSelect: function (selectedDate) {
$(this).datepicker('option', 'minDate', selectedDate);
},
onClose: function (dateText, inst) {
var now = new Date()
if (now.getMonth() == inst.selectedMonth) {
$(this).datepicker('option', 'showCurrentAtPos', 0);
} else {
$(this).datepicker('option', 'showCurrentAtPos', 1);
}
}
});