Javascript 为什么每次选择日期都要执行beforeShowDay?
您好,提前感谢您的帮助。 我使用Jquery中的Datepicker UI,根据文档,在日历显示之前,每天都会调用beforeShowDay函数 https://api.jqueryui.com/datepicker/option-beforeShowDay 在显示该函数之前,每天都会在datepicker中调用该函数 所以现在我遇到了一个问题,在点击一个日期后,函数会再次执行,这会给我的代码带来很多麻烦,因为它还会生成其他内容,具体取决于选择的日期 有人知道为什么会这样吗Javascript 为什么每次选择日期都要执行beforeShowDay?,javascript,jquery,Javascript,Jquery,您好,提前感谢您的帮助。 我使用Jquery中的Datepicker UI,根据文档,在日历显示之前,每天都会调用beforeShowDay函数 https://api.jqueryui.com/datepicker/option-beforeShowDay 在显示该函数之前,每天都会在datepicker中调用该函数 所以现在我遇到了一个问题,在点击一个日期后,函数会再次执行,这会给我的代码带来很多麻烦,因为它还会生成其他内容,具体取决于选择的日期 有人知道为什么会这样吗 $("#
$("#datepicker").datepicker({
dateFormat: 'dd.mm.yy',
onSelect: function (date) {
displayTimes($(this).datepicker('getDate'));
},
beforeShowDay: function (date) {
console.log("test");
var result = checkAvailability(date);
updateTimeSelectEvents();
return result;
},
onChangeMonthYear: function (year, month) {
currentDisplayedMonth = month;
currentDisplayedYear = year;
$("#possibleTimesContainer").html('');
if ($("#possibleTimesContainer").find(".open").length !== 0) {
$("#possibleTimesContainer").find(".open").removeClass("open");
}
getAppointementsofMonth(month, year);
}
});
console.log正在以下情况下执行:
日历将加载最初预期的内容
预计该月将发生变化
一天是意想不到的
欢迎任何帮助 选择日期时,它也会重新渲染,至少会显示选定的样式。我建议您重构代码,这样您就不会对显示的每个日期都进行大量的处理—不清楚updateTimeSelectEvents的作用是什么,但由于它不带参数,看起来可以调用一次,可能是在beforeShow中:似乎没有“渲染完成”选项