2013-01-19 32 views
0

我正在使用fullCalendar来安排事件,并且正在寻找一个新功能,用户可以撤消日历中已完成的移动。Fullcalendar - 撤消移动

你们知道一个聪明的方法吗?

我想到的第一件事是将以前的状态保存在一个新表中,并且当用户想要撤消时,系统只需使用“上一个状态”表中的值重置事件表中的值。

+0

听起来很对我。问题将出现在您要撤消removeEvent并重新创建具有其所有属性的事件。也许你可以像[撤销管理器](https://github.com/ArthurClemens/Javascript-Undo-Manager)这样的东西进行整合 – mccannf

+0

谢谢!我会仔细看看撤消管理器。:) – hgerdin

回答

0

我已经为此实现了一个解决方案。它可能不是最优雅的,但它适用于我。我在名为e_history的事件表中有一列;它的内容是包含{date:“1/12/2012”,startTime:“8:00”,duration:4}的JSON.stringified数据的数组。在我的系统中,持续时间值与基于30分钟时间增量映射出的值相对应。在我的事件弹出窗口($ .dialog)中,我有一个按钮,用户可以单击以查看旧的日程安排日期 - 如果要将事件设置回旧日期,则可点击。这仅适用于监视单个事件。如果您想记住日历的整个状态,则只需保存事件对象的字符串化副本即可。这将允许灵活地根据需要解析它,并监视来自数据库的差异。