2012-03-19 82 views
0

承認將selectedItem我想送SelectedList通過ViewBag和控制器,查看我已選定的項目,這是控制器的DropDownList在MVC3不選擇列表的

ViewData["aaa"]= new SelectList(new []{new SelectListItem { Text = "1", Value = "1" }, 
new SelectListItem { Text = "2", Value = "2"}, 
new SelectListItem { Text = "25", Value = "25" }, 
new SelectListItem { Text = "50", Value = "50" }, 
new SelectListItem { Text = "100", Value = "100" }, 
new SelectListItem { Text = "1000", Value = "1000" }}, "Text", "Value", "100"); 

視圖部分

@Html.DropDownListFor(m1 => m1.Sobe,(IEnumerable<SelectListItem>)ViewData["aaa"]) 

和我得到這個HTML

<select data-val="true" data-val-number="The field Sobe must be a number." data-val-required="The Sobe field is required." id="Sobe" name="Sobe"><option value="1">1</option> 
<option value="2">2</option> 
<option value="25">25</option> 
<option value="50">50</option> 
<option value="100">100</option> 
<option value="1000">1000</option> 
</select> 

,這意味着沒有任何選擇。我不明白,請幫忙

+0

而且我知道如果我DropDownListFor更改爲下拉列表和設置從屬性不同的名稱,將工作,但我不能回來值 – VirtuoZ 2012-03-19 08:51:57

回答

0

HTML輔助選擇了在

發現m1.Sobe

項目。如果m1.Sobe爲0,則不會選擇任何內容。

HTML輔助忽略所選項目「的SelectList」

+0

這不是個例,我只需明確定義該值。我找到解決方案來更改dropdownlist名稱,但我不能將數據綁定到html數據?有沒有解決這個問題的方法? – VirtuoZ 2012-03-19 09:12:42

+0

名稱必須相同才能將數據返回到模型 – Rinat 2012-03-19 09:20:59

+0

是的,我知道,但如果我將名稱與屬性相同,則mvc將不會顯示選定的值。這是文章http://mattpenner.info/2010/02/02/mvc-bug-with-default-dropdownlist-or-listbox-html-helpers/#comment-504 – VirtuoZ 2012-03-19 09:28:04