2010-08-19 5 views
5

kann mir jemand sagen, wie man "jquery fullcalendar" Ereignisse mit Ajax bevölkern.nicht in der Lage, dynamische Daten in jquery Fullcalendar durch Ajax

Es gibt keine Setter-Methode, die im Vollkalender zur Verfügung gestellt wird, um eine AJAX-Antwort (das JSON-Objekt) nach dem Laden des Kalenderobjekts zu setzen. Gibt es eine Möglichkeit, Daten nach dem Laden von Kalenderobjekten einzugeben?

In meinem Fall stelle ich zum ersten Mal Daten im Vollkalender "event:" Eigenschaft und es funktioniert gut. Aber wenn ich auf "Weiter" oder "Zurück" drücke, um einen Monat in einen anderen zu wechseln, kann ich keine Daten dorthin eingeben.

Thnx im Voraus

Antwort

1

in ASP.NET MVC Ansicht:

$('#calendar').fullCalendar({ 
      theme: true, 
      header: { 
       left: 'prev,next today', 
       center: 'title', 
       right: 'month,agendaWeek,agendaDay' 
      }, 
      events: "/Calendar/GetEvents/"}); 

Contoller:

public JsonResult GetEvents() 
    { 
     List<DAL.VwMeeting> allMeeting = meetingRepository.GetAll(); 
     var eventList = from e in allMeeting 
         select new 
         { 
          url=(e.MeetingOccurID).ToString(), 
          title = e.MeetingTitle, 
          start = ConvertToUnixTimestamp((DateTime)e.MeetingOccurStartDate), 
          end = ConvertToUnixTimestamp((DateTime)e.MeetingOccurEndTime), 
          allDay = false 
         }; 
     return Json(eventList.ToArray()); 
    } 

oder Sie verwenden können:

$('#calendar').fullCalendar('refetchEvents'); 

nach jedem Ereignis

+0

Bitte geben Sie mir ein Beispiel für JSON Antwort, was ich in Start behalten sollte :, Ende:, und ich denke, Titel wird eine einfache Zeichenfolge sein. Ich habe die gleiche Methode verwendet, was Sie vorschlagen, aber Vollkalender zeigt in keiner Ansicht etwas an. Ich benutze JSP und Servlet am Serverende. Danke – Bhupi

+0

Sorry Bhupi, ich bin .NET-Entwickler, können Sie diese Tutorials sehen http://weblogs.asp.net/gunnarpeipman/archive/2010/02/03/using-fullcalendar-jquery-component-with-asp- net-mvc.aspx, http: //szahariev.blogspot.com/2009/08/jquery-fullcalendar-and-aspnet-mvc.html oder Sie können Fullcalendar sehen: http://arshaw.com/js/fullcalendar/ Beispiele/Agenda-Ansichten.html – Akyegane

1

Anstatt die Ereignisse von Ajax zu holen und sie dann in den Kalender setzen, können Sie die fullcalendar verwenden alle die Ajax für Sie zu tun:

$('#calendar').fullCalendar({ 
    events: "/myfeed.php" 
}); 

dann die richtige Ereignisse werden entsprechend dem Datumsbereich abgerufen, den der Benutzer gerade anzeigt. Weitere Informationen finden Sie unter fullcalendar documentation.

+0

Dank theycallmemorty Griff, , aber ich kann nicht alle Daten gleichzeitig laden, während das Kalenderobjekt geladen wird. Ich muss die Daten für jeden Monat oder jede Woche erneut abrufen, wenn der Benutzer auf die Schaltflächen "next" oder "prev" klickt oder die Ansichten ändert. – Bhupi

+1

Das Vollkalender-Steuerelement behandelt das für Sie in Form der Parameter 'Start' und 'Ende'. Jedes Mal, wenn der Benutzer Ansichten oder Klicks vor oder zurück ändert, sendet das Steuerelement eine Anfrage an den Server. – theycallmemorty

+0

Können Sie bitte ein Beispiel für eine serverseitige Antwort geben, wenn die obige URL ausgelöst wird? Danke – Bhupi

Verwandte Themen