限制在jQuery DatePicker中选择几个日期

时间:2012-10-29 11:37:51

标签: jquery html

以下代码旨在限制在datepicker中选择今天的日期。

    jQuery(function () {

        var dateModifier = {
            beforeShowDay: function (dd) {
                var today = new Date();
                if (dd.getDate() === today.getDate()) {
                    return false;
                }
                else {
                    return true;
                }
            }
        };

        jQuery("#txt1").datepicker(dateModifier);

    });

为此,我明确地传递了dateModifier个对象,其中包含beforeShowDay个事件。我在jQuery doc上读到这个事件是针对日历中显示的所有日期触发的。当我们返回false时,dd日期将被停用。

但是此代码会禁用所有日期。我错过了什么。

HTML:

<input id="txt1" type="text" name="name" value=" " />

1 个答案:

答案 0 :(得分:3)

var disabledDays = ["9-21-2010", "9-24-2010", "9-27-2010", "9-28-2010", "9-3-2010", "9-17-2010", "9-2-2010", "9-3-2010", "9-4-2010", "9-5-2010"];
function disableAllTheseDays(date) {
    var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
    for (i = 0; i < disabledDays.length; i++) {
        if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) != -1) {
            return [false];
        }
    }
    return [true];
}

var dateModifier = {
        beforeShowDay: disableAllTheseDays
    };

    jQuery("#txt1").datepicker(dateModifier);

再次查看here