我正在开发 ASP.net Webform应用程序,我需要阻止某些日期和周末作为星期五和星期六。
以下代码工作正常,它阻止日期,但默认情况下将周六和周日设置为周末,而我需要阻止日历上的所有周五和周六。
我将不胜感激修复此特定代码。我不确定jQuery日历是否有内置属性来指定不同的周末
var holiDays = [[2012, 07, 06, 'New Years Day'], [2012, 07, 14, 'Event XYZ'], [2011, 17, 25, 'Christmas Day']];
$(function () {
$("#<%=txtBookDate.ClientID %>").datepicker({
dateFormat: "yy-mm-dd",
minDate: "-0d",
maxDate: "+60d",
beforeShowDay: noWeekendsOrHolidaysOrBlockedDates
});
function noWeekendsOrHolidaysOrBlockedDates(date) {
var noWeekend = jQuery.datepicker.noWeekends(date);
return noWeekend[0] ? setHoliDays(date) : noWeekend;
}
// set holidays function which is configured in beforeShowDay
function setHoliDays(date) {
for (i = 0; i < holiDays.length; i++) {
if (date.getFullYear() == holiDays[i][0]
&& date.getMonth() == holiDays[i][1] - 1
&& date.getDate() == holiDays[i][2]) {
return [false, 'holiday', holiDays[i][3]];
}
}
return [true, ''];
}
});
你无权访问 jQuery UI 源代码吗?奇怪,因为它是javascript,通常免费提供:
/* Set as beforeShowDay function to prevent selection of weekends.
@param date Date - the date to customise
@return [boolean, string] - is this date selectable?, what is its CSS class? */
noWeekends: function(date) {
var day = date.getDay();
return [(day > 0 && day < 6), ''];
}
看起来非常好,不可自定义,但相对容易作为您自己的函数重新实现。