2017-03-15 7 views
3

私はFullCalender 3.2を使用しています。問題は、カレンダーから現在のイベントを取得してクリアし、新しいイベントを配列に追加する場合です。私はそれが動作しない新しいイベントをFullCalenderに読み込む方法

$('#calendar').fullCalendar('updateEvents',eventsList); 

を呼び出すが、エラー

Uncaught TypeError: Cannot read property 'clone' of undefined 
    at Y (fullcalendar.min.js:6) 
    at Bt.x [as updateEvents] (fullcalendar.min.js:6) 
    at HTMLDivElement.<anonymous> (fullcalendar.min.js:6) 

をスローするとこれは私がjqueryのバージョン2.2.4を使用しようとしましたボタンのクリックハンドラ

var items = $('#calendar').fullCalendar('clientEvents'); 
items.splice(0, items.length); 
items.push({ 
      title: 'All Day Event', 
      start: '2017-02-01' 
      }); 
items.push({ 
      title: 'Long Event', 
      start: '2017-02-07', 
      end: '2017-02-10' 
      }); 
$('#calendar').fullCalendar('updateEvents',items); 

内のコードです3.1.1でも運はない

<link rel="stylesheet" href="resources/css/default.css"> 
<link rel='stylesheet' href='resources/css/fullcalendar.css' /> 
<script src='resources/js/jquery-3.1.1.min.js'></script> 
<script src='resources/js/moment-with-locales.min.js'></script> 
<script src='resources/js/fullcalendar.js'></script> 
+0

なぜアイテムをスプライスする必要がありますか? –

+0

古いイベントを削除します – IsaacK

+0

削除してもまだエラーが表示されます – IsaacK

答えて

1

あなたはこれを試すことができます。https://fullcalendar.io/docs1/event_rendering/renderEvent/

$("#calendar").fullCalendar(/* option */); 
var items = [ 
    { 
     title: 'All Day Event', 
     start: '2017-02-01' 
    }, { 
     title: 'Long Event', 
     start: '2017-02-07', 
     end: '2017-02-10' 
    } 
]; 
for (var i = 0; i < items.length; i++) { 
    $('#calendar').fullCalendar('renderEvent', items[i]); 
} 

renderEvent:カレンダーに新しいイベントをレンダリングします。

注::イベントは、タイトルを持つイベントオブジェクトで、最低でも開始する必要があります。

デモhere

+0

キャッチされない例外TypeError:event.start.cloneはfilterEventsWithinRangeで機能 ではありません(fullcalendar .js:11868) – IsaacK

+0

それでもうまくいかない – IsaacK

+0

私はデモで答えを更新します! ;) –

関連する問題