javascript - 如何将 fullcalendar addeventsource 与数组一起使用?

标签 javascript jquery arrays fullcalendar

你能说说这有什么问题吗?我有一个名为的 javascript 函数,它创建一个新的事件数组并尝试刷新 fullcalendar。

var events=new Array();
var numberofevents = this.serviceVariableGetDates.getTotal();

  for (i=0;i<numberofevents;i++)
       {
       //alert("numbrr:" + i);
       var dates=this.serviceVariableGetDates.getItem(i);
       console.log(dates.getData());
       var start_date = dates.getValue("c0");
       var end_date = dates.getValue("c1");
       var event_name = dates.getValue("c2");
       //var EventEntry = [ 'title: '+ event_name, 'start: '+ start_date,'end: '+ end_date ];
       events['title'] = event_name;
       events['start'] = start_date;
       events['end'] = end_date;
       events['color'] = "blue";
       this.label1.setCaption(start_date);
       //EventArray.push(EventEntry);
       console.log(events['title']);
       }
  $('#calendar').fullCalendar('addEventSource',events);
  $('#calendar').fullCalendar('rerenderEvents');

日历不会刷新或显示事件数组中的事件....通过不同的调试方法,我确信事件数组中填充了正确的数据。 start_date 例如是 unix 时间戳格式的“1307318400000”。全日历在开始时(页面加载时)在其他地方初始化,即使调用了 addeventsource 和 rerenderevents 方法,它也保持不变。

最佳答案

根据文档,您需要将事件数组放入 addEventSource 函数

event must be an Event Object with a title and start at the very least.

var events=new Array();
var numberofevents = this.serviceVariableGetDates.getTotal();
    for (i=0;i<numberofevents;i++)
    {
    //alert("numbrr:" + i);
    var dates=this.serviceVariableGetDates.getItem(i);
    console.log(dates.getData());
    var start_date = dates.getValue("c0");
    var end_date = dates.getValue("c1");
    var event_name = dates.getValue("c2");
    //var EventEntry = [ 'title: '+ event_name, 'start: '+ start_date,'end: '+ end_date ];
    event = new Object();       
    event.title = event_name; // this should be string
    event.start = start_date; // this should be date object
    event.end = end_date; // this should be date object
    event.color = "blue";
    event.allDay = false;
    this.label1.setCaption(start_date);
    //EventArray.push(EventEntry);
    console.log(events['title']);
    events.push(event);
    }
$('#calendar').fullCalendar('addEventSource',events);
//$('#calendar').fullCalendar('rerenderEvents');

希望这会有所帮助!

关于javascript - 如何将 fullcalendar addeventsource 与数组一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6182822/

相关文章:

javascript滚动多个div

java - 二维数组垂直和水平翻转

javascript - Ajax请求失败?

javascript - 面板在 ExtJ 中占用了不必要的巨大空间

c# - 从 MVC HttpPost 将错误返回给 jQuery

javascript - 如何比较类名以便删除 TD 标签?

javascript - Coffeescript 相当于 On Document Ready

javascript - 在 react 中使用 SetState 更新数组对象中的一项

c++ - 从输入文件到数组的困惑读取

javascript - 将 JSON 数组添加到 Mongoose 模式 (JavaScript)