我刚开始使用这个插件,在删除刚刚创建的事件时遇到了一些问题。使用eventClick时,我可以删除所有事件,但不能删除eventClick上的特定事件。
如有任何帮助,我们将不胜感激。这是我的密码。
<script type='text/javascript'>
$(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var calendar = $('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
selectable: true,
selectHelper: true,
select: function(start, end, allDay) {
var title = prompt('Trade Show Name:');
if (title) {
calendar.fullCalendar('renderEvent',
{
title: title,
start: start,
end: end,
allDay: allDay,
id: 12
},
true // make the event "stick"
);
$('input[name="startDate"]').val(start);
}
calendar.fullCalendar('unselect');
},
eventClick: function(calEvent, jsEvent, view) {
$('#calendar').fullCalendar('removeEvents', function (calEvent) {
return true;
});,
editable: true
});
});
您可以通过两种方式实现这一点:
1) 为每个事件设置一个唯一的ID,并将这些ID传递给removeEvents
调用。
eventClick: function (calEvent, jsEvent, view) {
$('#calendar').fullCalendar('removeEvents', calEvent._id);
}
这里_id
是fullCalendar生成的唯一ID。
2) 传递一个筛选函数以删除所需的事件。
考虑到你正试图在eventClick
中做到这一点,我建议你使用第二个。您的案例示例如下:
eventClick: function (calEvent, jsEvent, view) {
$('#calendar').fullCalendar('removeEvents', function (calEvent) {
return true;
});
}
这里传递给removeEvents
的过滤函数接受要删除的事件,返回true。由于您在eventClick
中执行此操作,所以您所要做的就是通过calEvent
。
希望这能有所帮助!