【发布时间】:2014-11-19 17:57:26
【问题描述】:
我有一个没有模型的视图。在设计时,它有 2 个带有值的下拉列表。以下是我的查看代码:
if (string.Equals("Home", @ViewContext.RouteData.Values["Controller"].ToString()))
{
using (Html.BeginForm("Submit","Home",FormMethod.Post,new {@class="firstform"}))
{
<div class="field vert">
<select>
<option>Home</option>
<option>Health</option>
</select>
</div>
<div class="field vert">
<select>
<option>Education</option>
<option>Designation</option>
</select>
</div>
<input type="submit" class="btn" value="Get Now"/>
}
}
我的操作如下:
[HttpPost]
public ActionResult Submit(FormCollection f)
{
return View();
}
在行动中我找不到表单值,请您指导我应该做什么或我缺少什么来获取 Submit 行动中的值。
我正在设置断点并检查表单集合什么都没有。请帮忙
【问题讨论】:
-
您需要为您的控件提供
name属性,例如<select name="abc">...。但是为什么不直接使用视图模型并利用 MVC 的模型绑定功能呢? -
@StephenMuecke 这些只是静态的下拉列表。不要指望他们会改变。你还推荐使用模型绑定吗?
-
就我个人而言,我会使用视图模型来获得使用强类型 html 助手、模型绑定和未来灵活性的好处,但这是一个简单的案例,所以我把它留给你。
标签: c# .net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4