【发布时间】:2020-09-03 15:33:05
【问题描述】:
您好,在调用 ajax 以获取要在 Datapicker 中显示的日历日期后,我调用了一个函数来使用日期参数数组初始化 datapicker...问题是 beforeShowDay 不起作用。请注意,在 $.when().done() 之外调用时它可以正常工作,但默认情况下已经分配了日期而不是来自 db;
这里函数初始化数据选择器:
function inizializeCalander(array){
var format ="dd/mm/yyyy";
var datesd = ['11/05/2020', '05/21/2020'];
var date = new Date();
var avaibleDates =array;
var id_Dates = new Array();
date.setDate(date.getDate());
$('.pickerdate').datepicker({
language: "it",
beforeShowDay: function(date) {
month = '' + (date.getMonth() + 1),
day = '' + date.getDate(),
year = date.getFullYear();
if (month.length < 2) {
month = '0' + month;
}
if (day.length < 2) {
day = '0' + day;
}
var dmy = day +"-"+month+"-"+year;
if (avaibleDates.includes(dmy)) {
return {classes: 'highlight', tooltip: 'Title'};
}else{
return {classes: 'disabled', tooltip: 'Title'};
}
},
startDate: date,
autoclose:true,
format: format,
//daysOfWeekDisabled: "0,1,2,3",
datesDisabled:datesd,
inline: true,
todayHighlight: true,
});
}
这里是调用 inizializeClander 的时间:
$.when(getClanderDates()).done(function(ajax1Results){
var array = new Array();
array=ajax1Results;
console.log(array);
inizializeCalander(array);
});
//inizializeCalander(array);//if called outside it workd fine but with already assigned dates by default not from db;
【问题讨论】:
标签: javascript jquery ajax bootstrap-4 datepicker