2

私はかつて持っていた

$('#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/ の URL が正しく呼び出され、1 つのイベントが返されますが、カレンダーには表示されなくなります。私は何か間違ったことをしていますか?

4

4 に答える 4

2

単一のソースでイベントを取得するには、こちらのドキュメントを確認してください。

フルカレンダー

変更はほとんど必要ありません。

$('#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);
        }
    });
}

});

于 2013-03-01T17:05:31.783 に答える
1

解決策を見つけるのは困難でしたが、私はここで実行可能な方法を見つけました

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

于 2013-03-01T20:11:40.990 に答える
0

コールバック関数を削除して、成功ブロックからこれを呼び出すだけです
$('#calendar').fullCalendar('refetchEvents');

于 2015-03-10T14:08:20.660 に答える
0

コードを数時間読んだ後、allDay オプションに関する予期しない構成を見つけました。各イベントには、次のように allDay=false が必要です。

evts.push({ title: "Teste", start: "2014/01/18 10:30", end: "2014/01/18 13:00", allDay: false });
callback(evts);
于 2014-01-18T05:06:56.447 に答える