【问题标题】:handling a full calendar event object处理完整的日历事件对象
【发布时间】:2012-06-18 01:51:06
【问题描述】:

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

我忘了说...一切正常,没有崩溃...但是日历中没有新内容。 谢谢!

【问题讨论】:

    标签: jquery events object fullcalendar


    【解决方案1】:

    我从上面更正了您的代码。看看这个:

    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 数组inside

      事件来源:[ { 事件:[ { ... } ] } ]

    【讨论】:

      【解决方案2】:

      看到这个: 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 );
      

      请注意,当您将值分配给 start 时,它需要采用受支持的格式之一。

      您可以指定 IETF 格式的字符串(例如:“Wed, 18 Oct 2009 13:00:00 EST”)、ISO8601 格式的字符串(例如:“2009-11-05T13:15:30Z”)或一个 UNIX 时间戳。

      希望这会有所帮助。谢谢

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-10-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多