Я использую Fullcalendar 4 и у меня проблема с обновлением событий. Я меняю источник событий с помощью раскрывающегося меню, но я могу обновлять только события, которые хранятся в json, а не события, которые были перетащены динамически. Я использую следующий код.
calendar.destroy();
var eventSources = calendar.getEventSources();
var len = eventSources.length;
for (var i = 0; i < len; i++) {
eventSources[i].remove();
}
var url = './demo2/contents/calendar/get.php?source='+source;
calendar.addEventSource(url);
calendar.refetchEvents();
calendar.render();
Как я могу добавить все перетаскиваемые события в новый источник, используя eventReceive?
eventReceive: function(info) {
calendar.addEvent(event, [, source ]);
},
Внешний список создается с помощью приведенного ниже кода. Я попытался указать исходное местоположение, но, похоже, не работает, когда я перетаскиваю его из внешнего списка:
var initDrag = function(el,value) {
var eventObject = {
id: el.attr("data-id"),
startEditable: true,
allDay: false,
durationEditable: true,
title: $.trim(el.text()), // use the element's text as the event title
stick: true, // maintain when user navigates (see docs on the renderEvent method)
classNames: [el.attr("data-color"),],
description: 'Lorem ipsum dolor eius mod tempor labore',
source: 'planificacion'
};
// store the Event Object in the DOM element so we can get to it later
el.data('event', eventObject);
};
eventData
, а затем прочитать это свойство как второй аргумент вaddEvent
, например.calendar.addEvent(newEvent,evt.source);
. Так что это все еще косвенно, но вы можете, по крайней мере, сделать его переменным. - person ADyson   schedule 04.10.2019calendar.addEvent(newEvent,evt.extendedProps.source);
- person vance   schedule 04.10.2019