2010-09-09 7 views
0

J'utilise fullCalendar et je suis capable de remplir le calendrier avec des événements très facilement. Et je sous-estime la meilleure façon d'ajouter des événements au calendrier à travers la base de données. Ce dont j'ai besoin maintenant est d'attraper et remplir un formulaire d'événement d'édition après que l'utilisateur clique sur un événement.Comment attraper des données d'événement sur un événement click dans fullcalender en utilisant asp.net mvc

Comment est-ce que je ferais ceci quand j'utilise asp.net mvc 2?

Répondre

1

Eh bien, j'ai trouvé un moyen qui fonctionnerait pour moi. Dans ma page ASPX est le script ici pour afficher le calendrier:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#calendar').fullCalendar({ 
      events: "/Calendar/CalendarData" 
     , 
      eventClick: function(event) { 

       __doPostBack("EventPost_Clicked", event.id); 
      } 
     }); 
    }); 
</script> 

La partie de la fonction eventClick attire l'identifiant de l'événement et le renvoie à mon contrôleur. A l'intérieur de mon contrôleur:

public ActionResult Calendar() 
    { 
     if (Request.HttpMethod == "POST") 
     { 
      if (Request.Form["AddEvent"] != null) 
      { 
       return RedirectToAction("AddEvent", "Calendar"); 
      } 
      else if (Request.Form["__EVENTTARGET"] == "EventPost_Clicked") 
      { 
       string Eid = Request.Form["__EVENTARGUMENT"]; 
       return RedirectToAction("EditEvent", "Calendar", new {eventId = Eid }); 
      } 

     } 
     return View(); 
    } 

Le felse si attrape le postback et enverrait à une page editevent avec l'ID d'événement nécessaire.

J'espère que mon combat aidera quelqu'un d'autre.

Questions connexes