2010-06-08 5 views
0

Je commence juste sur MVC donc ceci devrait être une question facile à répondre. J'utilise MVC 2 pour ASP.Net. J'ai une liste déroulante qui, lorsque des changements devraient faire changer la grille aussi. J'ai trouvé un moyen d'attraper l'événement de sélection de changement et d'actualiser l'ensemble du formulaire en utilisant le code ci-dessous. $ ('# TheForm'). Submit(); commande provoque l'exécution de la méthode Index du contrôleur et réinitialise tout comme précédemment. Ce que je veux bien sûr, c'est que cette méthode prenne la nouvelle valeur de la liste déroulante, extrait et affiche les nouvelles données dans la vue en conséquence. Est-ce la façon dont je devrais le faire, ou devrais-je en faire plus du côté client à la place?ASP.Net MVC 2 - liste déroulante qui contrôle une grille

$ (function() { $ ("# StatusID") changer (function() {$ ('# de LeForm') soumettre();.. });} );

<p> 
    <% using (Html.BeginForm("Index", "Home", FormMethod.Post, new { id = "TheForm" })){%> 
     <%: Html.DropDownList("StatusId", (SelectList) ViewData["Status"]) %> 
    <%}%> 
</p> 

<p> 
    <% if (Request.IsAuthenticated) { %> 
    <%: Html.ActionLink("Add new item", "Add") %> 
    <% } %> 
</p> 

<table> 
    <tr> 

     <th> 
      Title 
     </th> 

     <th> 
      Date 
     </th> 
     <th> 
      Status 
     </th> 
    </tr> 

<% foreach (var item in Model) { %> 

    <tr> 


     <td> 
      <%: Html.ActionLink(item.Title, "Details", new { id = item.ItemCode }) %> 
     </td> 

     <td> 
      <%: String.Format("{0:g}", item.DateCreated) %> 
     </td> 
     <td> 
      <%: item.Status %> 
     </td> 
    </tr> 

<% } %> 

</table> 

    <p> 
    <%: Html.Label("Page: ") %> 

    <% for (int i = 1; i < Convert.ToInt32(ViewData["NumberOfPages"]); i++) 
     { %> 

    <%: Html.ActionLink(i.ToString(), "Index", new { page = i })%> 

    <% } %> 

    </p> 

Répondre

1

L'action Index a besoin d'un paramètre StatusID.

Il doit filtrer la liste des éléments par StatusId. Si cela ne fonctionne pas, veuillez poster le code de l'action.

+0

Spot sur. J'avais vraiment besoin d'apprendre cela, même si la réponse était très simple à la fin. – arame3333

Questions connexes