我已经使用fullCalendar month view创建了一个每月日历。FullCalendar:选择期间忽略事件
在我的日历上,我每天只显示一个事件。此事件用于显示用户的状态(可用,不可用,忙碌...)
因为我每天总是会有1个事件,所以我设置eventLimit
为true以避免多个事件,因为此事件是大概整整一天,我还设置了editable
为false,以防止事件的拖动&下降。
这里是我的代码:
$('#calendar').fullCalendar({
editable: false, // Prevent event drag & drop
events: '/json/calendar', // Get all events using a json feed
selectable: true,
eventLimit: true, // Only 1 event per day
header: {
left: 'prev,next',
center: 'title',
right: 'today'
},
select: function(start, end) {
window.location.hash = '#oModal-calendar'; // Display some popup with a form
end.subtract(1, 'days');
$('#checkboxButton').data('start', start);
$('#checkboxButton').data('end', end);
$('#calendar').fullCalendar('unselect');
}
});
我希望我的用户能够直接从日历中选择天,以便我在日历的选项设置selectable: true
。不过,我收到很多反馈,说“它没有工作”。
经过一番调查后,我发现用户经常点击事件块而不是一天。
由于事件默认是可拖动的,所以点击事件不会触发选择,因为我已将editable
设置为false,它不再执行任何操作。
这种组合导致我的用户认为存在错误。
我想fullCalendar选择工作,就像日历上没有事件一样。我如何实现这种行为?
编辑:这是一个基于完整的日历例如jsfiddle和我的代码要做到这一点是让用户通过eventClick
回调点击事件的
虽然它适用于简单的点击,但无法单击某个事件并拖动鼠标一次选择多个日期。我真的想“忽略事件”。 –
我明白了。 FullCalendar的文档中没有任何内容似乎有助于解决这个问题。为什么不把光标更改为“光标:禁止放置”;?所以用户知道不要点击事件数据?或者让事件的侵扰性更小,所以用户不会想要点击它? – jjbskir