在MVC中获取禁用下拉值

时间:2013-06-03 19:57:53

标签: c# asp.net-mvc asp.net-mvc-3

我对MVC很新。在我的表单中,我有一个禁用的下拉控件,其值在提交期间未被传递给模型,因为它被禁用。我尝试使用下面的隐藏字段

@Html.DropDownListFor(model => model.DepartmentID, new List<SelectListItem> { new SelectListItem { Text = "Item 1", Value = "1" }, new SelectListItem { Text = "Item 2", Value = "2", Selected = true } })

@Html.HiddenFor(model => model.DepartmentID)

上述两个语句都生成具有相同ID的控件,因此我不确定是否可以获得隐藏字段中下拉列表的值。

我可以在创建隐藏变量时使用不同的id,并使用jquery为其分配下拉值。

我只想知道我是否可以使用上面代码中显示的具有相同ID的隐藏字段来实现相同的效果?

1 个答案:

答案 0 :(得分:3)

表单字段不是由ID提交的,它们是按名称提交的。可以有两个具有相同名称的控件。但是,使用两个具有相同id的元素是无效的HTML。

您可以设置不同的ID,但保持相同的名称:

@Html.HiddenFor(x => x.DepartmentID, new { id="DepartmentID2" })