阻止(jquery ui)datepicker翻转到当前月份

时间:2013-10-20 09:56:21

标签: javascript jquery jquery-ui datepicker

我正在使用最新的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显示了两个月。当我在当月选择日期时,一切都很好。

但是当我在第二个月选择日期时,所选日期会移到第一个日期(因为更新状态?)。我不想要这种行为,我只想在第二个月选择日期。是否可以禁用此刷新状态?

编辑: 为了避免混淆,我需要一个内联日期选择器(当你选择一个日期时不会消失)

1 个答案:

答案 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);
        }
    }
});

演示:http://jsfiddle.net/IrvinDominin/UqHYV/