我既有正常事件又有allDay事件的日历。

我想禁用allDay事件,使其无法拖入议程视图中的正常事件。

全天活动从一开始就设置了开始时间和结束时间,因此我无法检查结束时间是否为空。

也许eventDrop-function中有一种方法可以阻止这种情况?

最佳答案

检查此小提琴:http://jsfiddle.net/100thGear/GPx28/

需要注意的几点:


allDay回调中的eventDrop参数不代表事件的allDay。它代表插槽的全天候能力。因此,在周视图中,顶部栏将allDay作为true,下面的时隙将allDay作为false
event回调中的eventDrop参数具有更新的日期/时间。因此,如果您将事件从allDay插槽移至6:30 AM插槽,则此回调中事件的开始实际上将说6:30:00。因此,我将拖动事件的allDay参数存储在拖动开始时的变量中(通过eventDragStart回调)
事件的id属性确定它是否为可重复事件。在您的小提琴中,allDay事件和normal事件都具有相同的ID-这会使您的拖动操作复杂化。如果可以,请避免这样做。
最后,我想您知道这一点,但是删除事件后正确的回调称为eventDrop-不仅仅是删除。


希望这可以帮助!

09-25 12:03