从选择列表获取值到控制器

时间:2011-10-04 02:54:22

标签: asp.net-mvc-3

我有一个选择列表,我想选择值并将其传递给de controller,我该怎么做?

这是我的代码

<select id="SelectImageType" onchange='submit();'>
  <option value="0">Select Image Type</option>
  <%foreach (var type in Model.ImageTypes)
    { %>
      <option value="<%=type.Key%>"><%=type.Name%></option>
  <%} %>
</select>

由于

2 个答案:

答案 0 :(得分:0)

使用名称并在控制器中使用表单集合来收集选定的值

<select id="SelectImageType" onchange='submit();' name ="image">
<option value="0">Select Image Type</option>
<%foreach (var type in Model.ImageTypes)
{ %>
      <option value="<%=type.Key%>"><%=type.Name%></option>
<%} %>
</select>

在您的控制器操作中

     ActionResult YourActionName(FormCollection collection){
         var selectedImages = collection["image"];
     }

答案 1 :(得分:0)

最好的原因是使用DropDownListFor然后将结果添加到模型中。

查看:

<%: Html.DropDownListFor(m => m.SelectedImageType, new SelectList((IEnumerable)Model.ImageTypes, "Key", "Name"))%>

控制器:

ActionResult YourActionName(Model model){
     var selectedImages = m.SelectedImageType;
}