FullCalendar中的重复事件

时间:2017-06-23 19:13:58

标签: javascript fullcalendar date-range recurring-events moment-recur

所以我花了两周时间试图解决这个问题并尝试了之前提出的所有其他答案。我仍然无法做到正确。

我正在尝试设置一个日历,其中在指定的日期范围内过滤周期性事件。 示例:"我的活动" - 每周四下午2:15 - 2017/06/01至2017/06/30之间。

我未能成功尝试此链接上提出的解决方案: Recurring Events in FullCalendar

在最后,我决定遵循这条路线: https://github.com/c-trimm/moment-recur

应该处理日期范围过滤器的moment.js插件(时刻重复)。

请帮忙!

我的json Feed返回:

  [{
    "title":"my event",
    "start":"2017-06-01T14:15",
    "dow":"4",
    "recurrence":"moment().recur[{
                 start:\"2017-06-01\",
                 end:\"2017-06-30\"}]"
  }]

我的日历有效,除了它不会永远停止在星期四发布活动。我不想手动复制活动。

<link rel="stylesheet" type="text/css" href="/fullcalendar.css">
    <script src='/jquery.min.js'></script>
    <script src='/moment.min.js'></script>
    <script src='/moment-recur.js'></script>
    <script src='/fullcalendar.js'></script>    

    <script>

        $(document).ready(function() {

            $('#calendar').fullCalendar({
                header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,listWeek,listDay'
                },
                validRange: function(nowDate) {
                        return {
                            start: nowDate.clone().subtract(2, 'months'),
                            end: nowDate.clone().add(2, 'months')
                        };
                    },

                // customize the button names,
                // otherwise they'd all just say "list"
                views: {
                listDay: { buttonText: 'Day' },
                listWeek: { buttonText: 'Week' },
                },
                hiddenDays: [ 5 ], // hide Fridays
                editable: true,
                eventLimit: true, // allow "more" link when too many events
                businessHours: [ // specify an array instead
                    {
                        dow: [ 1 ], // Monday,
                        start: '12:30', // 8am
                        end: '22:00' // 6pm
                    },
                    {
                        dow: [ 2, 3 ], // Tuesday, Wednesday
                        start: '9:30', // 8am
                        end: '22:00' // 6pm
                    },
                    {
                        dow: [ 4, ], // Thursday
                        start: '13:00', // 10am
                        end: '22:00' // 4pm
                    },
                    {
                        dow: [ 7 ], // Sunday
                        start: '11:00', // 10am
                        end: '18:30' // 4pm
                    }],
                events: 'my-event/feed',

       //THIS IS WHERE I GET STUCK!!!!!

                // I'm trying to implement this:
                eventRender: 
                recurrence = moment().recur({
                start: "01/01/2014",
                end: "01/01/2015"
               });

            });
        });
    </script>

    <div id='calendar'></div>

我相信我想把它写成一个函数,但是无论我尝试它还是制动日历还是不返回任何结果。在此先感谢大家!

1 个答案:

答案 0 :(得分:-1)

以下是fullcalendar中重复发生事件的小提琴链接。

http://jsfiddle.net/slicedtoad/duu0dx2t/1/

您需要在示例中指定的事件中指定$('#calendar').fullCalendar({ defaultDate: moment(), header: { left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, defaultView: 'month', events: [{ title:"My repeating event", start: '10:00', // a start time (10am in this example) end: '14:00', // an end time (6pm in this example) dow: [ 1, 4 ] // Repeat monday and thursday }], }); 属性。

--error-logfile ../log/gunicorn.log