FullCalendar(jQuery)refetchEvent不会显示事件

时间:2013-03-01 16:55:33

标签: jquery fullcalendar

我曾经有过

$('#calendar').fullCalendar({
    //some properties...
    events: "/Agenda/GetEvents/",
});

工作正常,我的活动正确显示。现在我想更新组合框选择中的事件(重新获取),所以这是我改变的内容:

$('#calendar').fullCalendar({
    //some properties...
    events: function (start, end) {
        $.ajax({
            url: '/Agenda/GetEvents/',
            dataType: 'json',
            data: {
                start: Math.round(start.getTime() / 1000),
                end: Math.round(end.getTime() / 1000),
                utilisateur: $("#Utilisateur option:selected").val()
            }
        });
        $('#Calendar').fullCalendar('refetchEvents');
    },
});

/ Agenda / GetEvents /的网址被正确调用并返回一个事件,但它不再显示在日历上。我做错了吗?

4 个答案:

答案 0 :(得分:2)

请查看此处的文档以使用单一来源获取事件。

Full calendar

需要进行少量更改。

$('#calendar').fullCalendar({
events: function(start, end, callback) {
    $.ajax({
        url: 'myxmlfeed.php',
        dataType: 'xml',
        data: {
            // our hypothetical feed requires UNIX timestamps
            start: Math.round(start.getTime() / 1000),
            end: Math.round(end.getTime() / 1000)
        },
        success: function(doc) {
            var events = [];
            $(doc).find('event').each(function() {
                events.push({
                    title: $(this).attr('title'),
                    start: $(this).attr('start') // will be parsed
                });
            });
            callback(events);
        }
    });
}

});

答案 1 :(得分:1)

解决方案很难找到,但我找到了一种可行的方法

http://mikesmithdev.com/blog/jquery-full-calendar/

答案 2 :(得分:0)

在阅读完代码几个小时后,我发现了一个关于allDay选项的意外配置。每个事件都必须具有allDay = false,如下所示:

evts.push({ title: "Teste", start: "2014/01/18 10:30", end: "2014/01/18 13:00", allDay: false });
callback(evts);

答案 3 :(得分:0)

删除回调函数只需从成功块中调用它 $('#calendar').fullCalendar('refetchEvents');