猿问

jQueryUI数据报警器可以禁用星期六和星期日(和节假日)吗?

jQueryUI数据报警器可以禁用星期六和星期日(和节假日)吗?

我用数据机来选择约会日期。我已经把日期范围定在下个月了。效果很好。我想把星期六和星期日排除在可供选择的范围之外。这能办到吗?如果是,怎么做?



慕工程0101907
浏览 569回答 3
3回答

偶然的你

有beforeShowDay选项,该选项接受对每个日期调用的函数,如果允许日期返回true,如果不允许返回false。从医生那里:前展日函数以日期作为参数,必须返回一个数组,其[0]等于true/false,指示此日期是否可选1等于默认表示的CSS类名或“。它是在数据报警器显示之前的每一天调用的。在“数据录音机”中显示一些国定假日。$(".selector").datepicker({&nbsp;beforeShowDay:&nbsp;nationalDays})&nbsp;&nbsp;&nbsp;natDays&nbsp;=&nbsp;[ &nbsp;&nbsp;[1,&nbsp;26,&nbsp;'au'],&nbsp;[2,&nbsp;6,&nbsp;'nz'],&nbsp;[3,&nbsp;17,&nbsp;'ie'], &nbsp;&nbsp;[4,&nbsp;27,&nbsp;'za'],&nbsp;[5,&nbsp;25,&nbsp;'ar'],&nbsp;[6,&nbsp;6,&nbsp;'se'], &nbsp;&nbsp;[7,&nbsp;4,&nbsp;'us'],&nbsp;[8,&nbsp;17,&nbsp;'id'],&nbsp;[9,&nbsp;7,&nbsp;'br'], &nbsp;&nbsp;[10,&nbsp;1,&nbsp;'cn'],&nbsp;[11,&nbsp;22,&nbsp;'lb'],&nbsp;[12,&nbsp;12,&nbsp;'ke']];function&nbsp;nationalDays(date)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;natDays.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(date.getMonth()&nbsp;==&nbsp;natDays[i][0]&nbsp;-&nbsp;1 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&&&nbsp;date.getDate()&nbsp;==&nbsp;natDays[i][1])&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;[false,&nbsp;natDays[i][2]&nbsp;+&nbsp;'_day']; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;return&nbsp;[true,&nbsp;''];}一个内置的函数存在,称为“noWeekend”,它阻止了周末的选择。$(".selector").datepicker({&nbsp;beforeShowDay:&nbsp;$.datepicker.noWeekends&nbsp;})要将两者结合起来,您可以做类似的事情(假设nationalDays(上述职能):$(".selector").datepicker({&nbsp;beforeShowDay:&nbsp;noWeekendsOrHolidays})&nbsp;&nbsp;&nbsp;function&nbsp;noWeekendsOrHolidays(date)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;noWeekend&nbsp;=&nbsp;$.datepicker.noWeekends(date); &nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(noWeekend[0])&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;nationalDays(date); &nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;noWeekend; &nbsp;&nbsp;&nbsp;&nbsp;}}更新:注意,在jQueryUI 1.8.19中,展前选择还接受可选的第三个参数,弹出工具提示。

翻过高山走不出你

这些答案非常有用。谢谢。我在下面的贡献中添加了一个数组,其中多天可以返回false(我们每周二、周三和周四都关闭)。我把具体的日期、年份和无周末的活动捆绑在一起。如果你想周末休息,把[星期六],[星期日]添加到关闭日期数组中。$(document).ready(function(){ &nbsp;&nbsp;&nbsp;&nbsp;$("#datepicker").datepicker({ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;beforeShowDay:&nbsp;nonWorkingDates, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;numberOfMonths:&nbsp;1, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;minDate:&nbsp;'05/01/09', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxDate:&nbsp;'+2M', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;firstDay:&nbsp;1 &nbsp;&nbsp;&nbsp;&nbsp;}); &nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;nonWorkingDates(date){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;day&nbsp;=&nbsp;date.getDay(),&nbsp;Sunday&nbsp;=&nbsp;0,&nbsp;Monday&nbsp;=&nbsp;1,&nbsp;Tuesday&nbsp;=&nbsp;2,&nbsp;Wednesday&nbsp;=&nbsp;3,&nbsp;Thursday&nbsp;=&nbsp;4,&nbsp;Friday&nbsp;=&nbsp;5,&nbsp;Saturday&nbsp;=&nbsp;6; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;closedDates&nbsp;=&nbsp;[[7,&nbsp;29,&nbsp;2009],&nbsp;[8,&nbsp;25,&nbsp;2010]]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;closedDays&nbsp;=&nbsp;[[Monday],&nbsp;[Tuesday]]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;closedDays.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(day&nbsp;==&nbsp;closedDays[i][0])&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;[false]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;closedDates.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(date.getMonth()&nbsp;==&nbsp;closedDates[i][0]&nbsp;-&nbsp;1&nbsp;&& &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;date.getDate()&nbsp;==&nbsp;closedDates[i][1]&nbsp;&& &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;date.getFullYear()&nbsp;==&nbsp;closedDates[i][2])&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;[false]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;[true]; &nbsp;&nbsp;&nbsp;&nbsp;}});
随时随地看视频慕课网APP
我要回答