2010-08-19 11 views
5

może ktoś mi powiedzieć, jak wypełnić zdarzenia "jquery fullcalendar" za pomocą ajax.nie można ustawić dynamicznych danych w jquery fullcalendar przez ajax

Nie ma metody ustawiającej podanej w pełnometrażowym kalendarzu, aby ustawić odpowiedź ajax (która jest obiektem Json) po załadowaniu obiektu kalendarza. Czy istnieje sposób na podawanie danych po załadowaniu obiektu kalendarza?

W moim przypadku po raz pierwszy dostarczam dane w fullcalendar "event:" nieruchomości i działa dobrze. Ale kiedy naciskam przycisk next lub previous, aby przełączyć się z jednego miesiąca na drugi, nie mogę wprowadzić do tego danych.

Thnx wcześniej

Odpowiedz

1

w ASP.NET MVC Widok:

$('#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()); 
    } 

lub można użyć:

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

po każde zdarzenie obsłużyć

+0

Proszę podać przykład odpowiedzi json, co powinienem zatrzymać na początku :, koniec:, i domyślam się, że tytuł będzie zwykłym ciągiem znaków. Użyłem tej samej metody co sugerujesz, ale funkcja fullcalendar nie pokazuje niczego w żadnym widoku. Używam JSP i serwletu na końcu serwera. Dzięki – Bhupi

+0

Przykro nam, Bhupi, jestem programistą .NET, możesz zobaczyć tutoriale 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 lub możesz zobaczyć Fullcalendar: http://arshaw.com/js/fullcalendar/ przykłady/agenda-views.html – Akyegane

1

Zamiast pobierania zdarzenia AJAX, a następnie umieszczenie ich w kalendarzu, można użyć fullcalendar zrobić cały Ajax dla Ciebie:

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

Wówczas poprawne Zdarzenia będą pobierane zgodnie z zakresem dat, które przegląda użytkownik. Aby uzyskać więcej informacji, patrz fullcalendar documentation.

+0

Dzięki theycallmemorty, , ale nie mogę załadować wszystkich danych naraz podczas ładowania obiektu kalendarza. Muszę ponownie pobrać dane dla każdego miesiąca lub tygodnia, gdy użytkownik kliknie przycisk "następny" lub "poprzedni" lub zmieni widoki. – Bhupi

+1

Kontrolka fullcalendar obsłuży to dla ciebie w postaci parametrów "start" i "koniec". Za każdym razem, gdy użytkownik zmieni widoki lub kliknie przycisk Poprzedni lub Następny, kontrola wyśle ​​żądanie do Twojego serwera. – theycallmemorty

+0

czy możesz podać przykład odpowiedzi po stronie serwera po uruchomieniu powyższego adresu URL? Dzięki – Bhupi

Powiązane problemy