0

イベントについて次のデータが渡されます。

[{"title":"my First Entry","start":"2016-09-27T11:47:00","end":"2016-09-27T12:47:00","allday":false}]

エントリをmonthビューでのみレンダリングします。eventRenderも解雇されずdayweek

Javascript

var calendar = $('#calendar').fullCalendar({
        editable: false,
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },

        events: "http://localhost:8000/fetch",
        // events: [
        //     {
        //         title: 'Lunch with All',
        //         start: new Date(2016, 9, 27, 12, 0),
        //         end: new Date(2016, 9, 27, 13, 0),
        //         allDay: false
        //     },
        //     {
        //         title: 'Birthday Party',
        //         start: new Date(y, m, d + 1, 19, 0),
        //         end: new Date(y, m, d + 1, 22, 30),
        //         allDay: false
        //     },
        //     {
        //         title: 'Click for Google',
        //         start: new Date(y, m, 28),
        //         end: new Date(y, m, 29),
        //         url: 'http://google.com/'
        //     }
        // ],

        // Convert the allDay from string to boolean
        eventRender: function (event, element, view) {
            var start = event.start;
            console.log("Rendered");

            var end = moment(event.end);
            event.end = end;
            if (event.allDay === 'true') {
                event.allDay = true;
            } else {
                event.allDay = false;
            }
        },
        selectable: false,
        selectHelper: false,
        select: function (start, end, allDay) {
            var title = prompt('Event Title:');
            var url = prompt('Type Event url, if exits:');
            if (title) {
                var start = $.fullCalendar.formatDate(start, "yyyy-MM-dd HH:mm:ss");
                var end = $.fullCalendar.formatDate(end, "yyyy-MM-dd HH:mm:ss");
                $.ajax({
                    url: 'http://localhost:8888/fullcalendar/add_events.php',
                    data: 'title=' + title + '&start=' + start + '&end=' + end + '&url=' + url,
                    type: "POST",
                    success: function (json) {
                        alert('Added Successfully');
                    }
                });
                calendar.fullCalendar('renderEvent',
                    {
                        title: title,
                        start: start,
                        end: end,
                        allDay: false
                    },
                    true // make the event "stick"
                );
            }
            calendar.fullCalendar('unselect');
        },

        editable: false,
        eventDrop: function (event, delta) {
            var start = $.fullCalendar.formatDate(event.start, "yyyy-MM-dd HH:mm:ss");
            var end = $.fullCalendar.formatDate(event.end, "yyyy-MM-dd HH:mm:ss");
            $.ajax({
                url: 'http://localhost:8888/fullcalendar/update_events.php',
                data: 'title=' + event.title + '&start=' + start + '&end=' + end + '&id=' + event.id,
                type: "POST",
                success: function (json) {
                    alert("Updated Successfully");
                }
            });
        },
        eventResize: function (event) {
            var start = $.fullCalendar.formatDate(event.start, "yyyy-MM-dd HH:mm:ss");
            var end = $.fullCalendar.formatDate(event.end, "yyyy-MM-dd HH:mm:ss");
            $.ajax({
                url: 'http://localhost:8888/fullcalendar/update_events.php',
                data: 'title=' + event.title + '&start=' + start + '&end=' + end + '&id=' + event.id,
                type: "POST",
                success: function (json) {
                    alert("Updated Successfully");
                }
            });

        }

    });

日付がこの形式で設定されている場合、すべてのビューで正常に機能しますnew Date(2016, 9, 27, 12, 0)

4

0 に答える 0