2013-11-23 60 views
0
@Html.DropDownListFor(x => x.SelectedProperty, Model.Property, "Please Select") 

我在asp.net mvc3中有上面的代碼來填充下拉列表。數據會填充,但所選項目是模型結果的第一項。我試圖將默認選定值設置爲「請選擇」。怎麼做?@ html.dropdownfor不是選擇默認值

回答

2

在你的控制器動作,您應該SelectedProperty的值設置爲項目的價值要預選:

model.SelectedProperty = "5"; 

這顯然假定Porperty包含這樣的值:

model.Property = new[] 
{ 
    new SelectListItem { Value = "1", Text = "item 1" }, 
    new SelectListItem { Value = "2", Text = "item 2" }, 
    new SelectListItem { Value = "3", Text = "item 3" }, 
    new SelectListItem { Value = "4", Text = "item 4" }, 
    new SelectListItem { Value = "5", Text = "item 5" }, 
    new SelectListItem { Value = "6", Text = "item 6" }, 
}; 

通過設置model.SelectedProperty = "5";,具有Value="5"的項目將自動由Html.DropDownListFor幫手預選。

如果在另一方面,你想擁有所顯示的"Please Select"默認值,確保在該SelectedProperty設置爲null,而不是包含在項目的某個值的控制器動作。