如何在实现重复事件时在完整日历中设置stick = true?

时间:2016-05-07 08:57:41

标签: javascript jquery fullcalendar

我目前正在代码中执行fullCalendar的重复事件。但是当切换到下一个/上个月时,我的事件会出现错误或消失。我知道需要stick但是当我的代码是这样的时候我应该把它放在哪里?

var repeatingEvents = [{
                        title: sub[x],
                        start: tmefrm[x], 
                        end: tmeto[x], 
                        dow: [har[x]], 
                        ranges: [{
                                start: moment(dtefrm[x]), 
                                end: moment(dteto[x]),
                              }],
                        color: 'green',
                        }];
                        var getEvents = function( start, end ){
                            return repeatingEvents;
                        }
                        $('#calendar').fullCalendar({
                            defaultDate: moment(),
                            header: {
                                left: 'prev,next today',
                                center: 'title',
                                right: 'month,agendaWeek,agendaDay',
                            },
                            defaultView: 'month',
                            eventRender: function(event, element, view){
                                //console.log(event.start.format());
                                return (event.ranges.filter(function(range){
                                    return (event.start.isBefore(range.end) &&
                                            event.end.isAfter(range.start));
                                }).length)>0;
                            },
                            events: function( start, end, timezone, callback ){
                                var events = getEvents(start,end); //this should be a JSON request
                                callback(events);
                            },
                        });

我阅读的文档是event must be an Event Object with a title and start at the very least.

除非我的代码是这样的,否则很容易。

var myCalendar = $('#calendar');
myCalendar.fullCalendar();
var myEvent = {
                title: sub[x],
                color: 'green',
                start: tmefrm[x],
                end: tmeto[x],
                dow: [har[x]],
                ranges: [{
                          start: new Date(dtefrm[x]),
                          end: new Date(dteto[x]),
                        }],
                }
                myCalendar.fullCalendar('renderEvent', myEvent, [ stick= true]);

我做什么?我是否想要使用重复事件,到目前为止,这段代码使我远离以前的进展,但我不确定在哪里放置此stick

任何帮助都会很棒:)

1 个答案:

答案 0 :(得分:1)

这很简单!

myCalendar.fullCalendar('renderEvent', myEvent, true);