我需要编辑/删除callendar的单个事件,但是使用我当前的代码,更新/删除会影响日历中的所有事件。
$('#btn').click(function(){
var evento = $('#calendario').fullCalendar('clientEvents', function(event){
return event.className == 8;
});
evento[0].backgroundColor = "red";
$('#calendario').fullCalendar('updateEvent', evento[0]);
});
它会更改所有事件的背景颜色。此外,它会将事件title
更改为相同的事件(具有该ClassName
的事件)。
$('#btn').click(function(){
$('#calendario').fullCalendar('removeEvents', function(event){
return event.className = 8;
});
});
此外,此方法删除所有事件。
我如何定位单个活动?
更新
刚发现问题:
即使我仅定位具有该特定event
的特定className
,此方法updateEvent
也会更新共享相同的所有事件ID
。为什么呢?
我不认为这应该发生。
答案 0 :(得分:0)
你是对的,你应该能够使用过滤器来定位事件。
当您尝试删除事件时,您使用的是赋值运算符而不是equals运算符。通过更改它,您的过滤器应该返回true以删除该类的事件。
以下代码用于将类添加到一个事件,然后使用该类删除事件。
eventRender: function (event, element) {
if (event.id === 628) {
event.className = "Test";
}
},
eventClick: function (event, jsEvent, view) {
$('#calendar').fullCalendar('removeEvents', function (event) {
return event.className === "Test";
});
}