[英]jQuery datepicker onChangeMonthYear doesn't fire on current month
我正在使用datepicker內聯,突出顯示具有事件的日期。 每月每次更改時,都必須從服務器加載新事件。 問題是,onChangeMonthYear僅在與當前月份不同的月份觸發。 例如,如果八月,它將在之前的所有月份(七月,六月,五月...)和隨后的所有月份(九月,十月...)觸發,但是當我改回八月時不會觸發。 這是我的代碼:
function highlightDates(date) {
for ( var i = 0; i < agenda.length; i++) {
var start = agenda[i].start.toShortDate();
var end = agenda[i].end.toShortDate();
if (start >= date && end <= date) {
return [ true, 'dateHasEvent' ];
}
}
return [ true, '' ];
}
Date.prototype.toShortDate = function() {
var date = new Date(this.getFullYear(), this.getMonth(), this.getDate());
return date;
};
function monthChanged(year, month, instance) {
var date = new Date(year, month - 1);
$.getJSON('json.do', {
time : date.getTime()
}, updateCalendars);
}
function updateCalendars(data, status) {
agenda = data;
$('#calendar').datepicker('refresh');
}
var agenda = [];
$(function() {
$('#calendar').datepicker( {
beforeShowDay : highlightDates,
onChangeMonthYear : monthChanged,
changeMonth : false,
changeYear : false,
showButtonPanel : false
});
});
有人知道這是錯誤還是預期的行為?
好吧,那對我來說是愚蠢的。 問題是getJSON方法。 顯然,它接受什么json非常挑剔。 因此,在生成正確的json之后,一切都會按預期進行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.