从完整日历中删除事件

时间:2019-12-13 14:53:00

标签: javascript jquery fullcalendar fullcalendar-4

我尝试了这段代码,但显示JS错误。

eventDragStop: function(event) {
    console.log(event);
    console.log(event._id);
    let eve = event.jsEvent;
    //console.log(eve);
    var trashEl = jQuery('#CalendarTrash');
    var ofs = trashEl.offset();

    var x1 = ofs.left;
    var x2 = ofs.left + trashEl.outerWidth(true);
    var y1 = ofs.top;
    var y2 = ofs.top + trashEl.outerHeight(true);

    if (eve.pageX >= x1 && eve.pageX <= x2 &&
        eve.pageY >= y1 && eve.pageY <= y2) {
        if (confirm("Are you sure to  detete " + event.title + " ?")) {
            //pour annuker les informations
            $('#calendar').FullCalendar('removeEvents', event._id);
        }
    }
}

显示错误

  

未捕获的TypeError:$(...)。FullCalendar不是函数

event.titleevent._id为空白,其他一切正常。

根据文档,它具有https://fullcalendar.io/docs/v3/removeEvents,它具有

.fullCalendar( ‘removeEvents’ [, idOrFilter ] )

fullCalendar已被本文档https://fullcalendar.io/docs/upgrading-from-v3弃用,现在我需要删除eventDragStop上的事件的语法

1 个答案:

答案 0 :(得分:2)

在我看来,只需查看您提供的link即可找到的有关如何迁移到fullcalendar-4的所有信息。您至少需要更改两件事:

  • 传递给您的eventDragStop回调的参数现在是带有{ event, jsEvent, view }的对象(如here所述)
  • To remove an event:“检索Event对象,然后调用其remove方法:”
var event = calendar.getEventById('a');
event.remove();