| Issue 2111: | Error when switching months on full calendar | |
| 1 person starred this issue and may be notified of changes. | Back to list |
I got a strange problem with fullcalendar. When I click on < > buttons, the same ajax actions was executed moren than once, like the image on link: http://snag.gy/VQfEU.jpg If I keep clicking, more and more ajax calls are made. My code is: $(document).ready(function () { var sourceFullView = { url: '/Agenda/GetDiaryEvents/' }; var sourceSummaryView = { url: '/Agenda/GetDiarySummary/' }; var CalLoading = true; $('#calendar').fullCalendar({ header: { left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, defaultView: 'month', editable: true, allDaySlot: false, selectable: true, slotMinutes: 15, events: '/Agenda/GetDiaryEvents/', eventClick: function (calEvent, jsEvent, view) { ClearPopupFormValues(); $('#eventID').val(calEvent.id); $('#eventTitle').val(calEvent.title); $('#eventDate').val($.fullCalendar.formatDate(calEvent.start, 'dd/MM/yyyy')); $('#eventTime').val($.fullCalendar.formatDate(calEvent.start, 'HH:mm')); //Calculando timespan var start = new Date(calEvent.start.getFullYear(), calEvent.start.getMonth(), calEvent.start.getDate(), calEvent.start.getHours(), calEvent.start.getMinutes(), 0, 0); var end = new Date(calEvent.end.getFullYear(), calEvent.end.getMonth(), calEvent.end.getDate(), calEvent.end.getHours(), calEvent.end.getMinutes(), 0, 0); var weeks = 1000 * 60 * 60 * 24 * 7; var days = 1000 * 60 * 60 * 24; var hours = 1000 * 60 * 60; var mins = 1000 * 60; var secs = 1000; var diffWeeks = Math.ceil((start.getTime() - end.getTime()) / (weeks)); var diffDays = Math.ceil((start.getTime() - end.getTime()) / (days)); var diffHours = Math.ceil((start.getTime() - end.getTime()) / (hours)); var diffMinutes = Math.ceil((start.getTime() - end.getTime()) / (mins)); var diffSeconds = Math.ceil((start.getTime() - end.getTime()) / (secs)); $('#eventDuration').val(Math.abs(diffMinutes)); alert() $("#someKey").val(calEvent.someKey); $('#popupEventForm').modal('show'); $('#eventTitle').focus(); $('#btnPopupDelete').css('display', 'inline'); }, eventDrop: function (event, dayDelta, minuteDelta, allDay, revertFunc) { if (confirm("Confirma mudança no evento?")) { UpdateEvent(event.id, event.start); } else { revertFunc(); } }, eventResize: function (event, dayDelta, minuteDelta, revertFunc) { if (confirm("Confirma alteração na duração do evento?")) { UpdateEvent(event.id, event.start, event.end); } else { revertFunc(); } }, dayClick: function (date, allDay, jsEvent, view) { $('#descricao').val(""); $('#eventDate').val($.fullCalendar.formatDate(date, 'dd/MM/yyyy')); $('#eventTime').val($.fullCalendar.formatDate(date, 'HH:mm')); ShowEventPopup(date); $('#btnPopupDelete').css('display', 'none'); }, eventRender: function (event, element) { element.find('.fc-event-time').text($.fullCalendar.formatDate(event.start, 'HH:mm')); }, viewRender: function (view, element) { if (!CalLoading) { if (view.name == 'month') { $('#calendar').fullCalendar('removeEventSource', sourceFullView); $('#calendar').fullCalendar('removeEvents'); $('#calendar').fullCalendar('addEventSource', sourceSummaryView); } else { $('#calendar').fullCalendar('removeEventSource', sourceSummaryView); $('#calendar').fullCalendar('removeEvents'); $('#calendar').fullCalendar('addEventSource', sourceFullView); } } } }); CalLoading = false; }); Anyone can help? Thanks
Apr 21, 2014
#1
david.me...@gmail.com
Jun 7, 2014
(No comment was entered for this change.)
Status:
Invalid
|
|
| ► Sign in to add a comment |