2016-04-28 8 views
2

ich eine Dropdown-Liste für ein Modell Eigenschaft haben SomProperty genannt:Assign ID Html.DropDownListFor

@Html.DropDownListFor(model => model.SomeProperty,(SelectList)ViewBag.items) 

wo in der Steuerung, ViewBag.items ist ein IEnumerable<SelectListItem>.

Wie kann ich der Dropdown-Liste eine ID zuweisen?

+2

Was ist falsch mit der 'id', die bereits hinzugefügt wurde (zB' id = "Some Property "')?, Aber wenn Sie es überschreiben wollen - '@ Html.DropDownListFor (m => m.SomeProperty, (SelectList) ViewBag.items), new {id =" xxxx "})' –

Antwort

3

Ihre Verwendung ist bereits korrekt. Die ID lautet SomeProperty. Es enthält auch den Wert des Elements, das der Endbenutzer auswählt.

@Html.DropDownListFor(model => model.SomeProperty, (SelectList)ViewBag.items, "-- Select --") 

Dennoch, wenn Sie den Standard-ID-Name dann ändern wollen Sie dies tun können, wie unten dargestellt (auch von Stephen in Kommentar beschreiben)

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

Bonus: Optional können Sie auch spezifiziere css class für dein drop down als:

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