我正在使用jquery完整日历并遇到此问题。我在同一视图中有两个日历。当我点击左侧日历中的一个事件时,它应该消失,同时,相同的事件将出现在正确的日历中。
问题是由事件对象中的source属性引起的。
eventClick: function(calEvent, jsEvent, view) {
var a = {
"id": 5,
"color": "#2CC870",
"title": "work",
"name": "Helen",
"start": "2016-07-28T14:37:00.000Z",
"end": "2016-07-28T16:37:00.000Z",
"_id": "5",
"className": [],
"allDay": false,
"_allDay": false,
"_start": "2016-07-28T14:37:00.000Z",
"_end": "2016-07-28T16:37:00.000Z",
// "source": {
// "url": "/requests/employer",
// "className": [],
// "_fetchId": 1,
// "_status": "resolved"
// },
}
$('#js-request-employer-calendar').fullCalendar('removeEvents',a.id);
$('#js-request-employee-calendar').fullCalendar('renderEvent',a);
console.log(calEvent);
console.log(jsEvent);
console.log(view);
// change the border color just for fun
$(this).css('border-color', 'red');
}
如果我将source属性保留在事件对象中,则不会显示新事件。如果我隐藏它,它的工作原理。
感谢您的帮助!!
答案 0 :(得分:1)
这是预期的行为。必须自动填充source属性。
如果您尝试将某个事件添加到特定来源,则无法修复,请参阅错误跟踪器的详细信息:https://github.com/fullcalendar/fullcalendar/issues/2537
唯一的其他解决方案是删除并立即添加您的事件源。