仅在Datepicker中的特定月份

时间:2015-10-12 14:24:03

标签: jquery datepicker

我在酒店网站上工作,配有预订工具,我需要对综合日期选择器进行最后一次更改。

目前,代码已经过修改,只允许星期六签到。

我需要进一步修改才能启用4月,5月,6月,7月,8月,9月。

有人可以告诉我如何在现有代码中添加getMonth来实现上述目标吗?

这是现有的:

    $.fn.gdlr_datepicker = function(){
    $(this).datepicker({
        dateFormat : 'yy-mm-dd',
        minDate: 0,




        changeMonth: true,
        changeYear: true,
        closeText: objectL10n.closeText,
        currentText: objectL10n.currentText,
        monthNames: objectL10n.monthNames,
        monthNamesShort: objectL10n.monthNamesShort,
        dayNames: objectL10n.dayNames,
        dayNamesShort: objectL10n.dayNamesShort,
        dayNamesMin: objectL10n.dayNamesMin,
        firstDay: objectL10n.firstDay,

    beforeShowDay: function(date) {

        var date1 = $.datepicker.parseDate('yy-mm-dd', $("#gdlr-check-in").val());
        var date2 = $.datepicker.parseDate('yy-mm-dd', $("#gdlr-check-out").val());
        return [date.getDay() === 6, date1 && ((date.getTime() == date1.getTime()) || (date2 && date >= date1 && date <= date2)) ? "dp-highlight" : ""];
        },

    });

提前致谢。

1 个答案:

答案 0 :(得分:0)

您应该添加一个包含月份的数组,然后在return语句中添加一个检查

monthArray = [3, 4, 5, 6, 7, 8];
 $.fn.gdlr_datepicker = function(){
        $(this).datepicker({
            dateFormat : 'yy-mm-dd',
            minDate: 0,




            changeMonth: true,
            changeYear: true,
            closeText: objectL10n.closeText,
            currentText: objectL10n.currentText,
            monthNames: objectL10n.monthNames,
            monthNamesShort: objectL10n.monthNamesShort,
            dayNames: objectL10n.dayNames,
            dayNamesShort: objectL10n.dayNamesShort,
            dayNamesMin: objectL10n.dayNamesMin,
            firstDay: objectL10n.firstDay,

        beforeShowDay: function(date) {

            var date1 = $.datepicker.parseDate('yy-mm-dd', $("#gdlr-check-in").val());
            var date2 = $.datepicker.parseDate('yy-mm-dd', $("#gdlr-check-out").val());
            return [$.inArray(date.getMonth(), monthArray) > -1 && date.getDay() === 6, date1 && ((date.getTime() == date1.getTime()) || (date2 && date >= date1 && date <= date2)) ? "dp-highlight" : ""];
            },

        });