将属性添加到FullCalendar中的eventObject
问题描述:
我使用FullCalendar的json events属性来调用一个返回JSON字符串的php脚本。该字符串具有所需的属性以及诸如“描述”之类的附加内容。该文件说,你可以添加属性,但没有如何做到这一点的信息。将属性添加到FullCalendar中的eventObject
我期待通过查看eventRender回调中的'event.description'来查看它是否被自动添加。它是'未定义的'。
如果有人有任何这方面的经验,我会很感激如何做到这一点的例子。
大卫
答
当你创建一个新的FullCalendar事件,你可以包括与事件一起任何附加属性。 FullCalendar将忽略任何额外的属性,因此您将不得不编写一些脚本来添加和显示它们。
例如,添加事件地点或说明会进行如下:
var event = {
id : '123',
title : 'New Event',
url : 'http://thearena.com/',
start : "Sun, 18 Jul 2010 13:00:00 EST",
end : "Sun, 18 Jul 2010 17:00:00 EST",
allDay : false,
location : 'The Arena',
description : 'Big Event',
editable : true
};
$('.fc').fullCalendar('renderEvent', event, true) // Add Event to fullCalendar
// Add script here to post the event back to your server
然后确保当你初始化脚本日历,你有一些方式来显示这些额外的事件信息。以下是一个使用事件点击功能在警报窗口中显示数据的示例(或者一个facebox lightbox - 注释掉)。如果网址存在,它也会在新的标签页/窗口中打开。
$('.fc').fullCalendar({
eventClick: function(calEvent, jsEvent, view) {
var event = 'Event: ' + calEvent.title + '<br>' +
'Location: ' + calEvent.location + '<br>' +
'Start time: ' + calEvent.start + '<br>' +
'End time: ' + calEvent.end + '<br>' +
'Description: ' + calEvent.description;
alert(event);
// jQuery.facebox(event); // this would open the HTML in a facebox popup window
if (calEvent.url) {
window.open(calEvent.url);
return false;
}
});