2016-08-16 2 views
1

Ich bin mit einem fullCalendar arbeiten, und ich möchte für eine Veranstaltung den „Ende“ Eigenschaftswert erhalten, nachdem es so Ändern der Größe:ein Ereignis in fullcalendar Ändern der Größe

enter image description here

für diese erste Veranstaltung „Spiel Tag“ beginne ich bekommen = Mo 1. August 2016 01.00.00 GMT + 0100 (WEST) und end = Mi 2. August 2016 01.00.00 GMT + 0100 (WEST) wie kann ich den den Wert erhalten Ende nach dem Ändern der Größe meiner Veranstaltung manuell enter image description here Das ist mein Code:

$scope.listEvents = [{ 
     title: 'Gaming Day', 
     start: '2016-08-13T12:00:00', 
     end: '2016-08-15T00:00:00', 
     color: #9b59b6, 
     allDay: true 
    }, { 
     title: 'Live Conference', 
     start: new Date(y, m, 3) 
    }, { 
     title: 'Top Secret Project', 
     start: new Date(y, m, 4), 
     end: new Date(y, m, 8), 
     color: '#1abc9c' 
    }]; 

    $('#calendar').fullCalendar({ 
     header: { 
      left: 'prev,next', 
      center: 'title', 
      right: 'month,agendaWeek,agendaDay' 
     }, 
     firstDay: 1, 
     editable: true, 
     droppable: true, 
     drop: function(date, allDay) { // this function is called when something is dropped 
      // retrieve the dropped element's stored Event Object 
      var originalEventObject = $(this).data('eventObject'); 

      // we need to copy it, so that multiple events don't have a reference to the same object 
      var copiedEventObject = $.extend({}, originalEventObject); 

      // assign it the date that was reported 
      copiedEventObject.start = date; 
      // render the event on the calendar 
      // the last `true` argument determines if the event "sticks" (http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/) 
      $('#calendar').fullCalendar('renderEvent', copiedEventObject, true); 

      // remove the element from the "Draggable Events" list 
      $(this).remove(); 
     }, 
     events: $scope.listEvents, 
     eventDrop: function(event, delta, revertFunc) { 
      /* After a drag and drop of my event I get the new position with this */ 
      console.log(event.title); 
      if (event.start) console.log(event.start._d); 
      if (event.end) console.log(event.end._d); 
     } 
    }); 

So nach dem Ereignis Ändern der Größe, wie kann ich das neue Enddatum bekommen?

Antwort

1

Verwenden Sie die eventResize Eigenschaft:

function eventResize(event, delta, revertFunc) { 
    var endDate = event.end.format().toString(); 
    var startDate = event.start.format().toString(); 
} 

Und im Kalender Config den Verweis auf die Funktion hinzufügen:

header: {...}, 
eventResize: eventResize 
Verwandte Themen