uFl*_*ock 2 javascript jquery fullcalendar
我在Fullcalendar上遇到困难。基本上,我必须使用ajax逐月获取事件,否则由于事件非常复杂,渲染日历的时间过长。我可以获取事件并将它们添加到日历中没问题,但是问题是,当您添加新的数据源时,所有事件都可以正常显示,但是dayRender事件永远不会触发,因此我的自定义背景和qtip不会按应有的方式应用因为它们仅在dayRender事件中应用。
有一个“销毁然后渲染日历”(重绘日历)选项可以触发dayRender事件,但是由于某些原因,如果我这样做:
$('#calendar').fullCalendar('destroy');
$('#calendar').fullCalendar('render');
Run Code Online (Sandbox Code Playgroud)
日历已销毁,但从未重建->没有任何反应(也没有警告或错误消息)。
日历初始化后,是否可以通过类似的方式调用dayRender事件$('#calendar').fullCalendar( 'addEventSource', myevents );?
也许您可以提供一些替代解决方案?
回答:
好的,所以经过数小时的尝试,我相信我找到了一种解决方法:
$('#calendar').fullCalendar('prev');
$('#calendar').fullCalendar('next');
由于某种原因,它将调用dayRender事件。
好的,所以经过数小时的尝试,我相信我找到了一种解决方法:
首次初始化日历时,您将创建一个未来事件数组,并向其中添加1条虚拟记录(否则它将不会创建日历)。使用此数组初始化日历。创建ajax调用以添加日历的新数据源,并将事件推送到您在第一步中创建的数组中。将事件推入主数组后,执行以下代码:
$('#calendar').fullCalendar('prev');
$('#calendar').fullCalendar('next');
Run Code Online (Sandbox Code Playgroud)
由于某种原因,它将调用dayRender事件。