2013-05-01 85 views
1

如何在Razor中將模型對象數組中的DropdownList的選定值設置爲?例如:在剃鬚刀MVC中的下拉列表中選擇一個值4

@foreach (var model in Model.Courses) 
{ 
    .... 
    <td> 
     @Html.DropDownList(**** set the selected value from model.Order, from my Model.Positions list ****) 
    </td> 
    .... 
} 

謝謝!

回答

4

試試這個

@foreach (var model in Model.Courses) 
{ 
    .... 
    <td> 
          //Control Name, Options,  Selected Value 
     @Html.DropDownList("NameOfControl", ListOfItems, model.Value) 
    </td> 
    .... 
} 
+1

-1,因爲在DropDownList的幫手按F12時,第三參數評論說:「來設置數據源本身選擇的選項optionLabel:默認空項目的文本,該參數可以爲null。「 因此,因爲它實際上不會選擇您的值,它只會將其顯示爲「默認空項目」。如果您在此之後發佈POST,則您以這種方式「選擇」的值將不會發布。 – stralsi 2013-09-25 08:32:43

1

最好嘗試使用的SelectList

Dictionary<string, string> list = new Dictionary<string, string>(); 
    list.Add("Value1", "1"); 
    list.Add("Value2", "2"); 
    list.Add("Value3", "3"); 
    var selectList = new SelectList(list, 
       "Value", "Key", 
       "2"); // selected item's value "Value2" is selected. 
    ViewData["SelectedValue"] = selectList; 

    @Html.DropDownList("ddlValues", (SelectList)ViewData["SelectedValue"]))