使用fullcalendar,我想删除已取消的事件:那些有event.post_appt_status_id ==' 3'。
现在在EventRender中,我根据appt状态预先添加了图标。他们工作正常。我认为那时可以轻松地从日历中删除已取消的活动。
它不起作用。这是我正在尝试的内容:
eventRender: function eventRender(event, element, view) {
//handle icon before time
if(event.appt_status_id == '1'){
//confirmed icon
element.find(".fc-time").prepend("<i class='fa fa-check-square-o'></i> ");
} else if(event.appt_status_id == '2'){
//unconfirmed icon
element.find(".fc-time").prepend("<i class='fa fa-minus-square-o'></i> ");
} else if(event.appt_status_id == '8'){
//walkin icon
element.find(".fc-time").prepend("<i class='fa fa-male'></i> ");
} else if(event.appt_status_id == '9'){
//left message icon
element.find(".fc-time").prepend("<i class='fa fa-phone-square'></i> ");
};
//handle icon before title
if(event.post_appt_status_id == '6'){
//attended alone icon
element.find(".fc-title").prepend("<i class='fa fa-user'></i> ");
} else if(event.post_appt_status_id == '7'){
//attended companion icon
element.find(".fc-title").prepend("<i class='fa fa-users'></i> ");
} else if(event.post_appt_status_id == '4'){
//no show icon
element.find(".fc-title").prepend("<i class='fa fa-exclamation-triangle'></i> ");
} else if(event.post_appt_status_id == '3'){
//cancelled icon
element.find(".fc-title").prepend("<i class='fa fa-ban'></i> ");
$('#calendar_full').fullCalendar('removeEvent', event.id);
};
//add text to event
element.find('.fc-title').append("<br/>" + event.appt_reason_name + " with " + event.scheduled_with_name);
//handle changing menu options at top
return ['all', event.location_id].indexOf($('#calendar_location_id option:selected').val()) >= 0 && ['all', event.saw_by_id].indexOf($('#calendar_provider_id option:selected').val()) >= 0;
},
我原以为$('#calendar_full').fullCalendar('removeEvent', event.id)
会从日历中删除这些事件,但事实并非如此!
答案 0 :(得分:2)
如果eventRender回调返回false,则可以取消事件呈现。
该函数也可以返回false以完全取消事件的呈现。
eventRender: function( event, element, view ) {
//...
if (event.post_appt_status_id == '3') {
return false;
}
//...
}
答案 1 :(得分:0)
您尝试使用的事件已从插件中删除,他们引入了一个名为“removeEvents”的新事件。
有关详细信息,请查看
https://fullcalendar.io/docs1/event_data/removeEvents/
OLD LINK