我有一个问题与我的jquery fullcalendar。在日历上方,我有一个下拉菜单,用于过滤日历中的事件。
所以,我尝试做的是删除所有事件并根据下拉列表分配新事件。视图每次都会被复制。你以前一定见过这个,但在你建议我阅读链接之前,请知道:1. 我使用javascript函数来检索视图源。2. 我不使用任何json feed或php(我只是不能)。3.因为#2,我不能使用eventsource或google feed。
我非常依赖js来做事件过滤(我只需要)。这是我尝试的代码和我的日历代码。$(" #日历")。fullCalendar({events: generatefilters ()});generatfiltered是一个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’ )
函数将被重新触发