简体   繁体   English

完整的日历保存事件

[英]Full Calendar saving events

I'm having some issues with saving the end time with fullcalendar and having it be able to be dragged to encompass more than one day on the calendar. 我在用fullcalendar保存结束时间方面存在一些问题,并且可以将其拖到日历上超过一天的时间。 I have it set to save data via jQuery.post to my database, but I can't seem to figure out how to get the end value to populate and the ability to drag it across more than one day. 我将其设置为通过jQuery.post将数据保存到我的数据库中,但是我似乎无法弄清楚如何获取最终值以及将其拖到一天以上的能力。 Here is my code I have in place: 这是我已有的代码:

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

             editable: true,
             selectable: true,
             selectHelper: true,

             select: function (start, end, allDay) {
                 var title = prompt('Event Title:');

                 if (title) {
                     calendar.fullCalendar('renderEvent', {
                         title: title,
                         start: start,
                         end: end,
                     }, true);
                 }

                 calendar.fullCalendar('unselect');
             },

             eventDrop: function (event, dayDelta, minuteDelta) {
                 alert(event.title + ' was saved!');

                 jQuery.post(
                    '/event/save', 
                    {
                        title: event.title,
                        start: event.start,
                        end:   event.end
                    }
                 );
             }
        });

Any help would be appreciated! 任何帮助,将不胜感激! Thanks 谢谢

(I can also provide a url if that helps anyone determine the issue) (如果可以帮助任何人确定问题,我也可以提供网址)

Your code looks good. 您的代码看起来不错。 Its almost there. 它几乎在那里。 You need to implement the eventResize to save the effect of dragging the event across days. 您需要实现eventResize来保存跨天拖动事件的效果。 ideally, create a function to post your data and call it from each event. 理想情况下,创建一个函数来发布数据并在每个事件中调用它。

function saveMyData(event) {
    jQuery.post(
        '/event/save', 
        {
            title: event.title,
            start: event.start,
            end:   event.end
        }
    );
}

...
select: function (start, end, allDay) {
            var title = prompt('Event Title:');
            if (title) {
                calendar.fullCalendar('renderEvent', {
                    title: title,
                    start: start,
                    end: end,
                    }, true);
                }

                calendar.fullCalendar('unselect');
                saveMyData({'title': title, 'start': start, 'end': end});
            },

eventDrop: function (event, dayDelta, minuteDelta) {
               saveMyData(event);
           },

eventResize: function (event, dayDelta, minuteDelta) {
                 saveMyData(event);
             }
...

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM