是否可以限制FullCalendar,以便在创建事件拖动时,事件不会在其他日子发生?
我的意思是:如果我在3月20日09:00开始选择,我希望用户不能选择在3月21日13:00结束的活动。
您可以在日历设置中添加事件约束。
eventConstraint:{
start: '00:00', // a start time (start of the day in this example)
end: '24:00', // an end time (end of the day in this example)
},
你可以在这个plunker中复制它。
如果你只想在拖动过程中约束它,我认为你只能使用eventDrop回调。在那里你可以使用revertFunc来恢复拖动&如果moment.startOf('day)不同,则将移动移到上一状态。
类似于:
$('#calendar').fullCalendar({
events: [
// events here
],
editable: true,
eventDrop: function(event, delta, revertFunc) {
if (!event.start.startOf('day').isSame(event.end.startOf('day'))) {
revertFunc();
}
}
});
$('#calendar').fullCalendar({
events: [
{
title : 'event1',
start : '2010-01-01'
},
{
title : 'event2',
start : '2010-01-09T09:30:00',
end : '2010-01-09T15:30:00',
},
{
title : 'event3',
start : '2010-01-09T12:30:00',
allDay : false // will make the time show
}
]
});