多次调用 BeforeShowDay
Calling BeforeShowDay multiple times
我有一个 JQuery UI 日期选择器小部件,其中 beforeShowDay
调用 highlightday
函数。该函数需要一个日期和要突出显示的日期列表。如果日期在列表中,它会给出 "event" class.
function highlightday(date, highdates) {
for (var i = 0; i < highdates.length; i++) {
if ($.datepicker.formatDate("yy-mm-dd", date) === highdates[i]) {
return [true, 'event'];
}
}
return [true, ''];
}
这很好用。 "event" 日期标记正确。
然而,日期列表是从服务器获取的,并且仅针对选定的月份。因此,如果日期选择器在 5 月开始,fetchdates
函数将请求日期和 5 月的事件,并将其分配给 var dates
.
问题是用户选择了不同的月份。我设置了 onChangeMonthYear
来调用 changemonth
函数,这就是
function changemonth(year, month) {
this.dates = fetchdates(this.id, year + "-" + month);
}
dates
变量已正确更新,但新日期未突出显示,因为 beforeShowDay
已调用 highlightday
。 refresh()
什么都不做。
原来这是我的一个错误。 dates
未正确更新。
我有一个 JQuery UI 日期选择器小部件,其中 beforeShowDay
调用 highlightday
函数。该函数需要一个日期和要突出显示的日期列表。如果日期在列表中,它会给出 "event" class.
function highlightday(date, highdates) {
for (var i = 0; i < highdates.length; i++) {
if ($.datepicker.formatDate("yy-mm-dd", date) === highdates[i]) {
return [true, 'event'];
}
}
return [true, ''];
}
这很好用。 "event" 日期标记正确。
然而,日期列表是从服务器获取的,并且仅针对选定的月份。因此,如果日期选择器在 5 月开始,fetchdates
函数将请求日期和 5 月的事件,并将其分配给 var dates
.
问题是用户选择了不同的月份。我设置了 onChangeMonthYear
来调用 changemonth
函数,这就是
function changemonth(year, month) {
this.dates = fetchdates(this.id, year + "-" + month);
}
dates
变量已正确更新,但新日期未突出显示,因为 beforeShowDay
已调用 highlightday
。 refresh()
什么都不做。
原来这是我的一个错误。 dates
未正确更新。