在我目前正在进行的项目中,我们遇到了类似的挑战.我们还希望显示不是持久日历项目的事件,而是来自行动计划的项目.
我们使用了Full Calander,结合了提供JSON Feed的PHP编程.完整日历还提供了许多事件挂钩,在我们的例子中触发了编程数据库的PHP编程的Ajax发布.
更详细一点:
我们将完整日历称为:
$('#calendar').fullCalendar({
events: '/pl_Feed.PHP'
});
完整日历然后访问,例如:
/pl_Feed.PHP?start=1262332800&end=1265011200&_=1263178646
(额外参数用于防止缓存)
pl_Feed.PHP生成日历中显示的事件.
顺便说一下:我发现David Powers Date Class(阅读他的书:这很好)是一种乐趣.您可以在出版商网站上下载:http://www.apress.com/9781430210115
当它完成生成请求的事件时,pl_Feed.PHP将它们放在一个多维数组中并用json_encode回显数组:
foreach ($array_events as $array_event) {
$array_Feed_item['id'] = $array_event['id'];
$array_Feed_item['title'] = //Whatever you like to be the title;
$array_Feed_item['start'] = $array_event['start']; //Y-m-d H:i:s format
$array_Feed_item['end'] = $array_event['end']; //Y-m-d H:i:s format
$array_Feed_item['allDay'] = 0;
$array_Feed_item['color'] = 'blue'; //Whatever you like,of course
$array_Feed_item['borderColor'] = 'blue';
//You can also a CSS class:
$array_Feed_item['className'] = 'pl_act_rood';
//Add this event to the full list of events:
$array_Feed_items[] = $array_Feed_item;
}
echo json_encode($array_Feed_items);
完整日历将显示/pl_Feed.PHP生成的事件.
希望这可以帮助.