Html.DropDownList在哪里返回所选值?

时间:2015-07-23 18:47:51

标签: asp.net-mvc

我正在尝试在我的mvc应用程序中使用下拉列表,但我对它的运行方式感到非常困惑。您似乎传递了下拉列表中显示的列表和临时说明,但从未告诉您希望存储所选值的位置。我错过了什么或如何从我的下拉列表中检索值?

我的下拉列表:

header {
     display: flex;
     align-items: center;
     justify-content: center;;
}

我当前的下拉列表显示正确,但我无法保留所选的值。

2 个答案:

答案 0 :(得分:0)

您可以从当前EmployeeNames告诉要存储的值的位置,属性Model

您可以查看MVC Model BindingDropDownList的第一个参数是name。 MVC通过表单元素name绑定值。

以下

@Html.DropDownList("EmployeeNames", null, "Select an Employee", htmlAttributes: new { @class = "form-control" })

在HTML中看起来与此类似

<select id="EmployeeNames" name="EmployeeNames">
   <!-- options -->
</select>

您注意到name="EmployeeNames",这有助于从当前EmployeeNames绑定到属性Model

答案 1 :(得分:0)

实际上,它非常简单..只需抓取方法调用中的变量来处理控制器中的特定表单操作,如果DropDownList的名称是public static class MyExtClass { // the "IsNull" extension to "object" public static bool IsNull(this object obj) { return object.ReferenceEquals(obj, null); } } public SomeOtherClass { public static void TryUsingTheExtension() { object obj; // Why does this line fail? the extension method is not recognized // I get: 'object' does not contain a definition for "IsNull" bool itIsANull = object.IsNull(obj); } } ,那么你的方法应该是这样的

EmployeeNames