我正在使用jquery datepicker。我设置了一个应该禁用的日期数组,这很好用:
var vakantie = ["25-12-2018", "26-12-2018", "27-12-2018", "28-12-2018", "29-12-2018", "30-12-2018", "31-12-2018"];
function nietBeschikbaar(dt){
var datestring = jQuery.datepicker.formatDate('dd-mm-yy', dt);
return [dt.getDay() == 1 || dt.getDay() == 2 ? false : true && vakantie.indexOf(datestring) == -1 ];
};
jQuery("#datepicker").datepicker("option", "beforeShowDay", nietBeschikbaar);
现在,我也希望启用一个日期(每个星期一和星期二也都被禁用,但是这个日期是星期一)。使用此代码,我可以禁用除此日期以外的所有内容:
var enableDays = ["24-12-2018"];
function enableAllTheseDays(date) {
var sdate = $.datepicker.formatDate( 'dd-mm-yy', date)
if($.inArray(sdate, enableDays) != -1) {
return [true];
}
return [false];
}
jQuery("#datepicker").datepicker("option", "beforeShowDay", enableAllTheseDays);
但是现在我想结合这两个脚本,所以我想禁用'vakantie'数组,并启用'enableDays'数组。我不能让他们去打工,有人可以帮我吗?
答案 0 :(得分:0)
这可能有效,请对其进行测试:
function enableAllTheseDays() {
var sdate = $.datepicker.formatDate( 'dd-mm-yy', date);
var evaluateArray = vakantie.some(function(item){
return item == sdate;
});
var arrayWithResult = [];
arrayWithResult.push(evaluateArray);
return arrayWithResult;
}
只需确保sdate是这种格式的字符串变量:
“ dd-mm-yy”
希望有帮助!