为 Html.DropDownListFor 分配 ID

Dyl*_*ski 5 asp.net-mvc html.dropdownlistfor

我有一个名为 的模型属性的下拉列表SomProperty

@Html.DropDownListFor(model => model.SomeProperty,(SelectList)ViewBag.items)
Run Code Online (Sandbox Code Playgroud)

在控制器中,ViewBag.items是一个IEnumerable<SelectListItem>.

如何为下拉列表分配 ID?

Ama*_*rma 5

您的用法已经正确。该 ID 将是SomeProperty。它还将包含最终用户选择的项目的值。

@Html.DropDownListFor(model => model.SomeProperty, (SelectList)ViewBag.items, "-- Select --")
Run Code Online (Sandbox Code Playgroud)

如果您想更改默认 ID 名称,则可以按如下所示进行(也由 Stephen 在评论中描述)

@Html.DropDownListFor(model => model.SomeProperty, (SelectList)ViewBag.items, "-- Select --", new { id = "NewID"  })
Run Code Online (Sandbox Code Playgroud)

额外奖励:您还可以选择将下拉列表的 css 类指定为:

@Html.DropDownListFor(model => model.SomeProperty, (SelectList)ViewBag.items, "-- Select --", new {@class = "form-control"})
Run Code Online (Sandbox Code Playgroud)