Ваши события хранятся на стороне клиента или на стороне сервера? Если на стороне клиента, это должно сработать, особенно если вы хотите, чтобы событие произошло в указанное время:
$('#calendar').fullCalendar({
dayClick: function(date, allDay, jsEvent, view) {
$('#calendar').fullCalendar('clientEvents', function(event) {
if(event.start <= date && event.end >= date) {
return true;
}
return false;
});
}
});
Это даст события, которые перекрывают щелкнутое время и хранятся на стороне клиента. Для слота на весь день будут показаны все события, перекрывающиеся в этот день.
Если вы хотите, чтобы все события происходили в эту дату, независимо от того, был ли щелкнут слот allDay или временной интервал.
$('#calendar').fullCalendar({
dayClick: function(date, allDay, jsEvent, view) {
if(!allDay) {
// strip time information
date = new Date(date.getFullYear(), date.getMonth(), date.getDay());
}
$('#calendar').fullCalendar('clientEvents', function(event) {
if(event.start <= date && event.end >= date) {
return true;
}
return false;
});
}
});
Если ваши события хранятся на сервере, вы захотите взять дату, указанную в обратном вызове dayClick, и использовать ее для создания вызова на ваш сервер, чтобы получить информацию в любом формате, который вам нужен.
РЕДАКТИРОВАТЬ Если вы совершаете поездку в оба конца или пытаетесь получить информацию другими способами
$('#calendar').fullCalendar({
dayClick: function(date, allDay, jsEvent, view) {
var startDate = new Date(date.getFullYear(), date.getMonth(), date.getDay(), 0, 0, 0).getTime();
var endDate = new Date(date.getFullYear(), date.getMonth(), date.getDay(), 23, 59, 59).getTime();
var cache = new Date().getTime();
$.getJSON("/json-events.php?start="+startDate+"&end="+endDate+"&_="+cache,
function(data) {
// do stuff with the JSOn data
}
}
});
И если вы не хотите туда и обратно, вы также можете взглянуть на то, что происходит, скажем, в refetchEvents в fullCalendar.js. Если вы не возражаете против отклонения от ствола fullCalendar, вы можете где-то сохранить извлеченные события, чтобы не выполнять кучу манипуляций с DOM (в зависимости от количества событий, поскольку они становятся большими, что становится громоздким). 1016 *