上面的答案让我半途而废,但我最终得到了我认为稍微简单的内容,并且还针对最新的 FullCalendar 进行了更新。
$(document).ready(function() {
var d = new Date();
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
fixedWeekCount: true,
defaultDate: d,
editable: true,
eventLimit: false,
events: function(start, end, timezone, callback) {
var eventsUrl = '/events/' + end.year() + '/' + parseInt(end.month());
$.ajax({
url: eventsUrl,
type: 'GET'
}).done(function(response) {
callback(response);
}).fail(function(response, status, error) {
alert(status + ': ' + error);
});
},
loading: function(isLoading) {
if (isLoading) {
$('#loading').show();
} else {
$('#loading').hide();
}
}
});
});
'/events/' URL 包括年份和月份(例如,'/events/2015/2')以获取特定月份的事件。当日历第一次加载时,它默认为当前日期,并且方便地在第一次加载时传递给日历的 end 参数与 start 相同,因此它既可以在第一次加载时使用,也可以在上一个和下一个按钮时使用被点击。
无论如何,这对我来说效果很好,所以我想我会分享,因为它与我今天在工作时发现的任何其他示例都有点不同。