2009-09-30 9 views
0

Je voudrais passer une date d'une liste déroulante à mon ID dans le Html.BeginForm. C'est ce que j'ai jusqu'ici.Comment envoyer des données de DropDownList à Html.BeginForm dans MVC?

<%using (Html.BeginForm("Inquiry", "Billing", new { Date = ????? }, FormMethod.Post)) 


     <select id="myList" name="myList" > 
     <option>Term - Balance</option> 
     foreach (var item in Model.Term) 
      { %>        
     <option value="/<%=String.Format("{0:yyyyMMdd}", item.Date) %>" > 
     <%=item.Date.ToShortDateString()%> - <%=String.Format("{0:C}", (item.Balance))%></option> 
     <% } %>    
     </select> 

Des suggestions?

Répondre

1

Vous pouvez ajouter des attributs supplémentaires à la méthode BeginForm comme ceci:

<% using (Html.BeginForm("Inquiry", "Billing", 
          FormMethod.Post, new { id = myDate.ToString() })) 
     { %> 

... 

    <%} %> 

Si vous vous demandez comment faire le changement formulaire d'identification lorsqu'un utilisateur modifie la sélection sur une dropdownlist sur le formulaire, vous Je vais devoir utiliser javascript pour ça. Le code ci-dessus ne s'exécute qu'une seule fois au moment du rendu, donc si votre variable myDate n'est pas définie à ce moment-là, vous ne pouvez pas l'obtenir du côté serveur.

Questions connexes