我既有正常事件又有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
-不仅仅是删除。
希望这可以帮助!