以下代码旨在限制在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=" " />
答案 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