2013-05-30 13 views
5

voglio assegnare alcuni ID attributo name alla mia lista a discesa che sta utilizzando i dati dal ViewBag come,Assegna attribuire a @ Html.DropdownList

ViewBag.Group = new SelectList(group, "GroupId", "Name"); 

e nel lato vista ho usato la sintassi Razor per mostrare the Dropdown as,

@Html.DropDownList("Group", "New", new { id="testID" }) 

Ma sto ricevendo l'errore su questa linea. Posso solo assegnare la sintassi ID di questo Rasoio? So che l'ID viene generato con il nome "Playlist" Ma sto avendo 2 dropdown diversi usando lo stesso ViewBag. Per questo motivo devo assegnare un valore di attributo "ID" diverso per loro. Come può essere fatto?

risposta

16

Si deve usare qualcosa di simile

@Html.DropDownList("Group",null,new{@id="testID"}); 

perché i dati per la DropDownList deriva dal ViewBag per citarne Group

+0

posso assegnare un valore di Default in questo come ho assegnato nella mia domanda come "nuovo" ?? –

+0

@RahulRJ: sì è un 'optionlabel' che puoi benissimo impostare. – Saravanan

+1

Ma come posso impostarlo Qui se voglio il mio valore predefinito come "Nuovo" nel mio Dropdown –

8

Provalo:

controller

ViewBag.EmployeeId = new SelectList(db.tb_employees, "id", "last_name"); 

In vista

@Html.DropDownList("EmployeeId", (IEnumerable<SelectListItem>)ViewBag.EmployeeId,"Show All", new { @class = "form-control" }) 
+0

Funziona come richiesto :) – Zafar

Problemi correlati