2016-06-18 9 views
0

フルカランダルjqueryプラグインで作業していますが、今はリフェッチカレンダーを使用しています。 私は2つのイベントソースを持っており、私はカレンダーの頭の上にカスタムリフレッシュボタンを作っています。ユーザーがリフレッシュボタンを押すたびに、2番目のイベントソースからのみ再フェッチイベントを実行します。単一のイベントソースからのRefetchEventsフルカレンダー

fullcalendarのrefetchEventsにパラメータを渡す方法はありませんか?また、単一のイベントソースから再取得する方法はありますか。ユーザーがカスタム更新]ボタンをクリックするたびに

events: function(start, end, timezone,callback) { 
      $.ajax({ 
       url: //FIRST EVENT SOURCE 
       dataType: 'json', 

       success: function(response) { 
        //attaching the response to the calendar 
      } 

      $.ajax({ 
       url: // SECOND EVENT SOURCE 
       dataType: 'json', 

       success: function(response) { 
        //attaching response to calendar 
       } 
      }); 
     } 

は、$("#calendar").fullcalendar('refetchEvents');をしています - これは全体のカレンダーを再フェッチします(最初+ 2番目のイベント・ソース)

私は何を期待することですが、私は唯一のための再フェッチを行いたいです2番目のイベントソース。

+0

このオプションを試してください。 1.カレンダーを破棄します。2.カレンダーを再作成します。または、1と一緒に行くことができます。カレンダーをリフレッシュします。 –

+0

例:$( "#cal")。fullCalendar( 'refresh'); –

+0

返信いただきありがとうございます。リフレッシュすると、2つのイベントソースからリフレッシュされます。間違っていれば私を訂正してください。単一のイベントソースに対してリフレッシュを実行したい – Krupa

答えて

1

EDIT:バージョン2.8.0が今日リリースされ、単一のイベントソースの取得がサポートされています。私の答えは古いバージョンです。

最初のソースを更新しないように修正しますが、それでも画面の最初のソースからイベントを保存する必要がありますか?その後、それらを一時キャッシュに残してください。次に、グローバル変数を使用して、ユーザーが[更新]をクリックしたことを確認します。

var g_FirstSourceEventsCache = null; 
var g_IsRefreshClicked = false; 

events: function(start, end, timezone,callback) { 

      if (g_IsRefreshClicked) { 
      //do not reload from server, load from cache 
      callback(g_FirstSourceEventsCache); 
      g_IsRefreshClicked = false; 
      } else { 
      $.ajax({ 
       url: //FIRST EVENT SOURCE 
       dataType: 'json', 

       success: function(response) { 
        //attaching the response to the calendar 

        //save to cache 
        g_FirstSourceEventsCache = myFirstSourceEventsThatIPassedToCallback; 
      } 
      } 

      //second source is always refreshed 
      $.ajax({ 
       url: // SECOND EVENT SOURCE 
       dataType: 'json', 

       success: function(response) { 
        //attaching response to calendar 
       } 
      }); 
     } 
+0

ありがとう..あなたは本当にそれをとてもシンプルにしました.. Upvoted! – Krupa

関連する問題