2009-09-30 47 views
0

我想從下拉列表中將日期傳遞給Html.BeginForm中的ID。這是我迄今爲止所擁有的。如何將數據從DropDownList發送到MVC中的Html.BeginForm?

<%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> 

有什麼建議嗎?

回答

1

您可以到BeginForm方法添加附加屬性是這樣的:

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

... 

    <%} %> 

如果你問如何使窗體ID更改當用戶更改窗體上一個下拉列表選擇,那麼你這需要使用JavaScript。上面的代碼在渲染時只運行一次,所以如果你的myDate變量沒有被設置,那麼你不能在服務器端獲得它。

相關問題