FullCalendar dow 属性 中的重复事件
Recurring events in FullCalendar dow property
我有一些从数据库加载的事件。所有事件都用 dow 初始化:' ',因为我不希望事件在特定日期重复发生,除非被告知。我的事件是根据外部事件定义的,当拖到日历上时,这些数据会发送到数据库。
if($(this).text() == 'event1') {
$(this).data('event', {
title: $.trim($(this).text()),
stick: true,
start : '2016-12-01T12:00:00',
allday : false,
dow : ''
...
因此,如果用户希望某个事件在星期一重复发生,例如,用户按下星期一的复选框,然后单击该事件,eventClick 将触发并将 dow 属性更改为 dow :[0].
eventClick: function(event, jsEvent, view) {
console.log("attempting click");
if ($('#day1').is(':checked')) { // day1 is a checkbox for monday
event.dow = [0];
...
这不会使事件在接下来的星期一重新呈现所有事件时自行复制。 'dow' 似乎只有在您最初定义事件时设置它才有效,或者我错了吗?有没有办法在给定事件创建后动态定义 .dow 并使日历复制该事件?
试试这个:
$('#calendar').fullCalendar({
weekends: true,
defaultView: 'agendaWeek',
allDaySlot: false,
header: {
left: 'month,agendaWeek,agendaDay,listDay',
center: 'title',
right: 'prev,next today'
},
events: [{
id: 999,
title: 'event1',
start: '2016-12-05T16:00:00',
end: '2016-12-05T18:00:00'
}],
height: 'auto',
editable: true,
eventClick: function(event, jsEvent, view) {
var updatedEvent = {
id: 999,
title: 'updated event1',
start: '16:00:00',
end: '18:00:00',
dow: [0]
};
$('#calendar').fullCalendar('removeEvents', event._id);
$('#calendar').fullCalendar('renderEvent', updatedEvent, true );
}
});
我有一些从数据库加载的事件。所有事件都用 dow 初始化:' ',因为我不希望事件在特定日期重复发生,除非被告知。我的事件是根据外部事件定义的,当拖到日历上时,这些数据会发送到数据库。
if($(this).text() == 'event1') {
$(this).data('event', {
title: $.trim($(this).text()),
stick: true,
start : '2016-12-01T12:00:00',
allday : false,
dow : ''
...
因此,如果用户希望某个事件在星期一重复发生,例如,用户按下星期一的复选框,然后单击该事件,eventClick 将触发并将 dow 属性更改为 dow :[0].
eventClick: function(event, jsEvent, view) {
console.log("attempting click");
if ($('#day1').is(':checked')) { // day1 is a checkbox for monday
event.dow = [0];
...
这不会使事件在接下来的星期一重新呈现所有事件时自行复制。 'dow' 似乎只有在您最初定义事件时设置它才有效,或者我错了吗?有没有办法在给定事件创建后动态定义 .dow 并使日历复制该事件?
试试这个:
$('#calendar').fullCalendar({
weekends: true,
defaultView: 'agendaWeek',
allDaySlot: false,
header: {
left: 'month,agendaWeek,agendaDay,listDay',
center: 'title',
right: 'prev,next today'
},
events: [{
id: 999,
title: 'event1',
start: '2016-12-05T16:00:00',
end: '2016-12-05T18:00:00'
}],
height: 'auto',
editable: true,
eventClick: function(event, jsEvent, view) {
var updatedEvent = {
id: 999,
title: 'updated event1',
start: '16:00:00',
end: '18:00:00',
dow: [0]
};
$('#calendar').fullCalendar('removeEvents', event._id);
$('#calendar').fullCalendar('renderEvent', updatedEvent, true );
}
});