处理完整的日历事件对象



想知道我如何创建一个对象并用信息填充他,以便我可以将他添加到完整的日历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');

这里有几点需要注意:

  1. 如果您希望 newEvent 是一个对象,请使用以下命令来创建它: var newEvent = {title:"some text", start:new Date(y, m, d)};
  2. 不能将数组初始化为 newEvent[title]。数组是基于整数索引的。
  3. eventSourcesevents不能一起使用。如果您有多个事件源,则需要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 时间戳。

希望这有帮助。谢谢

相关内容

  • 没有找到相关文章

最新更新