我在酒店网站上工作,配有预订工具,我需要对综合日期选择器进行最后一次更改。
目前,代码已经过修改,只允许星期六签到。
我需要进一步修改才能启用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" : ""];
},
});
提前致谢。
答案 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" : ""];
},
});