除了IE之外,FullCalendar在第一次加载后没有从json加载事件

时间:2010-12-22 19:23:09

标签: events rendering fullcalendar

我一直在测试一些代码,我需要使用自己的json数据加载日视图。

$('#day-calendar').fullCalendar('removeEvents');
// logic goes here to create dayViewEvents
$('#day-calendar').fullCalendar('addEventSource', eval(dayViewEvents));

此代码被多次调用。事件在IE中完美呈现,但在Chrome,FireFox和Safari中,除初始加载外,项目不会显示。

以下是json的样本

[{"id":"T111","title":"OLIVER DOUGLAS","allDay":false,"start":"2010-12-27T08:00:00","end":"2010-12-27T08:00:00","url":null,"className":"myClass","editable":false,"source":null,"description":null,"eventType":"A Task"},
{"id":"T345","title":"EB DAWSON","allDay":false,"start":"2010-12-27T09:00:00","end":"2010-12-27T10:00:00","url":null,"className":"myRedClass","editable":false,"source":null,"description":null,"eventType":"A Call"}]

我尝试重新渲染,重新删除但没有任何作用。在IE中,每次都使用上面的代码。

另一件事 - 我称之为'clientEvents'并且它们在日历中。

谢谢, 保罗

1 个答案:

答案 0 :(得分:0)

我可能应该将此作为评论,但我想让它可读。

日历工作正常,这是我在javascript中的蠢事。我有:

$('#day-calendar').fullCalendar('gotoDate', dt.getYear(), dt.getMonth(), dt.getDate());

而不是:

$('#day-calendar').fullCalendar('gotoDate', **dt.getFullYear**(), dt.getMonth(), dt.getDate());

显然IE从getYear返回 2010 ,所有其他浏览器返回 110 。关键是总是使用getFullYear not getYear ,这是不推荐使用的。哦,好吧。