我想将下拉列表中的日期传递给Html.BeginForm中的ID。这就是我到目前为止所拥有的。
<%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>
有什么建议吗?
答案 0 :(得分:1)
您可以向BeginForm方法添加其他属性,如下所示:
<% using (Html.BeginForm("Inquiry", "Billing",
FormMethod.Post, new { id = myDate.ToString() }))
{ %>
...
<%} %>
如果您在用户更改表单上的下拉列表中的选择时询问如何更改表单ID,那么您需要使用javascript。上面的代码只在渲染时运行一次,所以如果那时你的myDate变量没有设置,那么就无法在服务器端获取它。