我正在使用FULLCALENDAR库来分配外部任务。我需要修复 2 件不同的事情:
1)我只需要在月视图中禁用"拖放"。
2)在月视图中:我需要一个在日历中拖放的任务/事件,而不是作为全天放置。相反,它应该放在上午 9 点至下午 5 点的营业时间。
这是我在第 2 点的尝试,使用 businessHours
businessHours: {
start: '9:00',
end: '17:00',
dow: [0,1,2,3,4,5,6]
},
https://jsfiddle.net/gonzalesc/7ycL8wed/
更新:
对不起,在我看来,在第 1 点解释得很糟糕。我需要"外部事件"不能仅在每月视图中拖到日历中。
结帐 查看完整日历文档中的特定选项
一个简单的例子:
$('#calendar').fullCalendar({
header: { center: 'month,agendaWeek' }, // buttons for switching between views
views: {
month: {
editable: false
}
}
});
关于您的第二个要求,如果您根本不想要全天事件,则可以通过以下方式删除所有视图的时段和全天默认值:
$('#calendar').fullCalendar({
...
allDaySlot: false
...
});
编辑:
此外,要在所有视图中仅显示 9:00 - 5:00 时隙,请执行以下操作:
$('#calendar').fullCalendar({
...
minTime: "09:00:00",
maxTime: "17:00:00",
...
});
编辑:
您可以在初始化外部事件时指定外部事件的开始时间。这将确定它们在一天中的哪个时间放置在非议程视图中的日历中:
$(this).data('event', {
title: $.trim($(this).text()),
stick: true,
start:'09:00'
});
小提琴
好的,第 1 点解决了。谢谢@scottysmalls
$('#calendar').fullCalendar({
header: { center: 'month,agendaWeek' },
views: {
month: {
editable: false,
droppable: false
}
}});
我认为我们即将解决这一点 2,但我不知道它是每月视图的条件。
$(this).data('event', {
title: $.trim($(this).text()),
stick: true,
start:'09:00',
end: '17:00'
});