2017-06-02 6 views
0

新しいイベントを取得していない:refetcheventsは、私は私のイベントを取得する関数を使用し

   events: function (start, end, timezone, callback) { 
 
        $.ajax({ 
 
         url: '/Controller/GetDiaryEvents/', 
 
         data: {

私は新しいイベントを追加するときに、カレンダーが新しく追加されたイベントは表示されません。イベントソースを何とかリセットする必要がありますか?

   success: function (response) { 
 
        debugger; 
 
        if (response == true) { 
 
         $('#calendar').fullCalendar('refetchEvents'); 
 
         alert('New event saved!'); 
 
         }

このリンクFullCalendar refetchEvents not reloading calendarはCalendar..initを行うことを言いますが、私はその方法が表示されません。

+0

あなたが示したコードに基づいて、動作しない理由はありません。イベントが確実にデータベースに正しく保存されていることを確認しましたか? "refetchEvents"を呼び出すと、Ajax呼び出しがイベントを受け取るようになりますか、代わりにコンソールにエラーが表示されますか?イベントを取得する場合は、レスポンスに新しいイベントが含まれているかどうかを確認します。ブラウザツールとデータベースGUIを使用していくつかの基本的なデバッグを行います。 – ADyson

答えて

0

すべてのイベントを再取得する必要はありません。

新しいイベントが作成されると、addEventSource機能を使用してカレンダーに追加します。

$("#calendar").fullCalendar('addEventSource', source); 

ソースは単なるイベントのオプションのように配列/ URL /関数であってもよいです。イベントはこのソースから直ちに取得され、カレンダーに配置されます。

関連する問題