2016-07-07 109 views

回答

0

选项1.创建三个事件,从2016-07-03到2016-07-07等。使用eventOverlap:设置禁止事件与这些事件重叠的函数。

选项2.创建几个事件,跨越所有许可的时间。所有事件必须具有相同的ID - 这很重要。然后使用带事件ID的eventConstraint。这样,任何用户事件都必须完全包含在您的虚拟事件中,否则拖动&将会失败。

选项3.可能是最合理的解决方案。使用eventDrop和eventResize处理程序来验证新事件的开始和结束是否符合您的约束条件。如果不是,则调用revertFunc()将事件返回到其原始状态。

例子:

eventDrop: function(event, delta, revertFunc) { 

    if (event.start.isAfter('2016-07-03') && 
     event.start.isBefore('2016-07-07') { //also add check for event.end 
      revertFunc(); 
     } 
} 
+0

感谢您的这些想法。 选项3是很好很简单的情况,但它并不反映在用户放弃事件之前该日期被禁用。如何隐藏选项1和选项2中的辅助事件? – Ofer