Fullcalendar V4-清除所有事件

时间:2019-06-18 11:10:44

标签: jquery fullcalendar fullcalendar-4

我正在从JSON源加载动态事件,但是每次单击不同的房间时,我想先清除所有事件,然后再获取新事件

我试图清除eventSource,但无济于事

var eventSource = calendar.getEventSources()
eventSource.remove();

这会导致错误:

Uncaught TypeError: eventSource.remove is not a function

我以前一直在使用V3,但已升级到V4,因此很难清除有关如何清除事件的文档。

4 个答案:

答案 0 :(得分:3)

您可以调用removeAllEvents函数删除所有事件,而无需刷新整个页面:

document.addEventListener('DOMContentLoaded', function () {
     var calendarEl = document.getElementById('calendar');

     var calendar = new FullCalendar.Calendar(calendarEl, {/*OPTIONS*/});

     $('#button').on('click', function () {
          calendar.removeAllEvents();
     });
});

答案 1 :(得分:2)

您绝对会发现,我收拾东西的日子特别慢!

var eventSources = calendar.getEventSources(); 
var len = eventSources.length;
for (var i = 0; i < len; i++) { 
    eventSources[i].remove(); 
} 

作为解决方案,如您所建议的@ADyson

答案 2 :(得分:1)

版本5不支持“ removeEvents”功能。您可以遍历事件列表并逐个删除它们var listeEvent = calendar.getEvents();listeEvent.forEach(event => { event.remove()});

答案 3 :(得分:0)

版本5.4.0

https://fullcalendar.io/docs/Event-remove

$('#calendar')。fullCalendar('removeEvents');