我正在从JSON源加载动态事件,但是每次单击不同的房间时,我想先清除所有事件,然后再获取新事件
我试图清除eventSource,但无济于事
var eventSource = calendar.getEventSources()
eventSource.remove();
这会导致错误:
Uncaught TypeError: eventSource.remove is not a function
我以前一直在使用V3,但已升级到V4,因此很难清除有关如何清除事件的文档。
答案 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)