想知道我如何创建一个对象并用信息填充他,以便我可以将他添加到完整的日历jquery插件中。到目前为止,我做了类似的事情:
var eventsArray = [];
var newEvent = new Object();
newEvent[title] = "some text";
newEvent[start] = d1; //got date string here exactly similar to the calendar's
eventsArray.push(newEvent);
var formattedEventData = [] ;
for (var k = 0; k < eventsArray.length; k ++) {
formattedEventData.push({
title: eventsArray[k][0],
start: eventsArray[k][1]
});
}
$('#calendar').fullCalendar({
eventsource: formattedEventData,
events: formattedEventData,
color: 'yellow',
textColor: 'black'
});
$('#calendar').fullCalendar('addEventSource',formattedEventData);
$('#calendar').fullCalendar('rerenderEvents');
我忘了说...一切都很好,没有崩溃...但日历中没有什么新鲜事。谢谢!
我从上面更正了你的代码。看看这个:
var eventsArray = [];
var newEvent = [];
newEvent[0] = "some text";
newEvent[1] = new Date(y, m, d); //got date string here exactly similar to the calendar's
eventsArray.push(newEvent);
var formattedEventData = [];
for (var k = 0; k < eventsArray.length; k++) {
formattedEventData.push({
title: eventsArray[k][0],
start: eventsArray[k][1]
});
}
$('#calendar').fullCalendar({
//eventsource: formattedEventData,
events: formattedEventData,
color: 'yellow',
textColor: 'black'
});
//$('#calendar').fullCalendar('addEventSource', formattedEventData);
//$('#calendar').fullCalendar('rerenderEvents');
这里有几点需要注意:
- 如果您希望 newEvent 是一个对象,请使用以下命令来创建它: var newEvent = {title:"some text", start:new Date(y, m, d)};
- 不能将数组初始化为 newEvent[title]。数组是基于整数索引的。
eventSources
和events
不能一起使用。如果您有多个事件源,则需要在eventSources
中包含events
数组:事件来源: [ { 事件: [ { ... } ] } ]
看到这个:http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/
你可以像这样使用它:
var newEvent = new Object();
newEvent.title = "some text";
newEvent.start = new Date();
newEvent.allDay = false;
$('#calendar').fullCalendar( 'renderEvent', newEvent );
请注意,当您为启动分配值时,它需要采用受支持的格式之一。
您可以指定 IETF 格式的字符串(例如:"星期三, 18 Oct 2009 13:00:00 EST")、ISO8601格式的字符串(例如:"2009-11-05T13:15:30Z")或 UNIX 时间戳。
希望这有帮助。谢谢