FullCalendar删除事件并读取它们

FullCalendar删除事件并读取它们,fullcalendar,Fullcalendar,我的jquery fullcalendar有问题。 在日历上方,我有一个下拉列表,用于过滤日历中的事件 因此,我尝试删除所有事件,并根据下拉列表分配新事件。视图每次都被复制。 您以前一定看过,但在您建议我阅读链接之前,请先了解: 1.我正在使用javascript函数检索视图源代码。 2.我没有使用任何json提要或php,我就是不能。 3.因为2,我不能使用eventsrouce或google feed 我在很大程度上依赖js来完成我不得不做的事件过滤。这是我试过的代码和我日历的代码。 $'c

我的jquery fullcalendar有问题。 在日历上方,我有一个下拉列表,用于过滤日历中的事件

因此,我尝试删除所有事件,并根据下拉列表分配新事件。视图每次都被复制。 您以前一定看过,但在您建议我阅读链接之前,请先了解: 1.我正在使用javascript函数检索视图源代码。 2.我没有使用任何json提要或php,我就是不能。 3.因为2,我不能使用eventsrouce或google feed

我在很大程度上依赖js来完成我不得不做的事件过滤。这是我试过的代码和我日历的代码。 $'calendar'.fullCalendar{events:generateFiltered}; generatefiltered是一个返回数据的js函数

$(document).ready(function () {
    $('#calendar').fullCalendar({
        header: {
            left: 'prev,next today',
            center: 'title',
            right: ''
        },
        editable: true,
        disableDragging: true,

        // Event handlers
        events: events(),
        eventClick: eventClick,
        dayClick: dayClick
    });
});
初始荷载使用该线: events:events是另一个返回数据的javascript

我现在唯一能想到的就是通过查找它的div来删除日历,然后重新创建它,我正试图避免这样做


非常感谢您的帮助。

您可以使用removeEvents从日历中删除所有事件,然后使用addEventSource添加新的事件数组。

您可以执行以下操作:

...
eventSources: [eventFetchFunction], //don't call this function here!
...

eventFetchFunction = (start, end, timezone, callback) => {
   const myCreatedEvents = []
   //do whatever you want here to generate or fetch events and add them to this array

   callback(myCreatedEvents)
}
每当你需要重新创建事件时,只需调用

.fullCalendar( ‘refetchEvents’ )

然后该功能将被重新触发

我最终删除了日历,就像我在文章末尾所说的那样,并重新创建了日历。也许用你建议的方法会更好。无论如何谢谢你!