Jquery 调用removeEvents-FullCalendar后renderEvent失败

Jquery 调用removeEvents-FullCalendar后renderEvent失败,jquery,fullcalendar,Jquery,Fullcalendar,我相当肯定这是一个错误。一旦我将remove称为“removeEvents”,就不会有后续的添加(“renderEvent”)工作,而那些确实表现为没有“粘性”的添加 如果我这样做: 初始化日历 使用$(“#日历”).fullCalendar('renderEvent',newEvent,true)添加事件A 使用$(“#日历”).fullCalendar('removeEvents',12345)删除此事件 使用$(“##日历”).fullCalendar('renderEvent',newE

我相当肯定这是一个错误。一旦我将remove称为“removeEvents”,就不会有后续的添加(“renderEvent”)工作,而那些确实表现为没有“粘性”的添加

如果我这样做:

  • 初始化日历
  • 使用
    $(“#日历”).fullCalendar('renderEvent',newEvent,true)添加事件A
  • 使用
    $(“#日历”).fullCalendar('removeEvents',12345)删除此事件
  • 使用
    $(“##日历”).fullCalendar('renderEvent',newEvent2,true)添加事件B
  • 事件A或B均未出现!两个事件都有不同的ID,应该发生的是事件A被删除,但事件B应该出现。如果我取出这个“removeEvent”,那么事件A和B都会出现(即使remove只针对事件A的ID)

    即使我在步骤4之后使用
    $(“#calendar”).fullCalendar('rerenderEvents')重新渲染事件,仍不显示事件B

    更有趣的是,这看起来不像是一个简单的“呈现”问题,因为如果我使用
    $(“#calendar”).fullCalendar('clientEvents',…),它不会在返回的事件数组中显示事件A或B,因为删除“removeEvent”将允许事件A和B同时出现在数组中

    解决方案似乎是在所有添加之后进行删除:

  • 添加事件A
  • 添加事件B
  • 删除事件A
  • 这会保留事件B,但在我的应用程序中,我有拖放功能,用户可以随时“添加”新事件!因此,我发现,当我称之为“removeEvent”时,将新事件拖到日历中会使事件的“粘性”消失,因此更改一个月不会保留添加的事件

    这是我的密码:

     $('#calendar').fullCalendar({
         theme: true,
         header: {
             left: "prev,next today",
             center: 'title',
             right: "today prev,next"
         }, 
         height: 400,
         selectable: true,
         selectHelper: true,
         unselectAuto: false, 
         select: calendarSelect,
         droppable: true,
         drop: calendarDrop,
         events:getCalendarData,
         eventClick:calendarEventClicked
     });
    
     var newEvent = {
         id: 12345,
         period: "Full-day", 
         title: "Full-day",
         start: new Date(2010, 11, 02),
         type: "Regular", 
         billable: true,
         className: "",
         changedThisSession: true
     };
    
     $("#calendar").fullCalendar( 'renderEvent', newEvent, true);
    
     $("#calendar").fullCalendar( 'removeEvents', 12345);
    
     var newEvent2 = {
         id: 4433,
         period: "Full-day", 
         title: "Full-day",
         start: new Date(2010, 11, 03),
         type: "Regular", 
         billable: true,
         className: "",
         changedThisSession: true
     };
     $("#calendar").fullCalendar( 'renderEvent', newEvent2, true);
    
    即使此代码删除ID为12345的事件,也不会显示另一个事件(ID 4433)。正在卸下线路…“卸下通风口”。。。使两个事件都显示

    同样,我可以添加新事件,拖动它们,等等,效果非常好。一旦“removeEvents”被调用一次,事情就开始变得奇怪起来

    谢谢你的帮助


    -Brian

    我刚刚从1.4.9升级到1.4.10,清除缓存并重试,现在看起来一切都正常工作

    希望就是这样


    -Brian

    我刚刚从1.4.9升级到1.4.10,清除缓存并重试,现在看起来一切都正常工作

    希望就是这样

    -布莱恩