我有幫助,這個問題前兩天:
Strange problem with ASP.NET MVC DropDownFor
的解決方案,我得到了工作,但現在我已經拼命地跑的simular問題相同觀點和行動。
這個時候我被在被加載到主視圖的局部視圖以下:
<%: Html.DropDownListFor(model => model.ST1, Model.ShowAdTypeList1, new { @class = "dd2", @style = "width:80px;" })%>
這將呈現這樣的:
<select name="ALS.ST1" id="ALS_ST1">
<option value="0">Alla</option>
<option value="1">Privata</option>
<option value="2">Företag</option>
</select>
在我有以下代碼動作結束
data.ALS.ST1 = 2;
ModelState.Clear();
return View(data);
問題是,下拉菜單總是選擇0?在下拉菜單中手動選擇數值2時,輸入動作時,data.ALS.ST1將被設置爲2。
爲什麼不將下拉菜單設置爲值2?
EDIT1:
這是與ALS_ST1工作在整個頁面上只有JavaScript:
$('#ALS_ST1').change(function() {
if (IsNotDblClick(this.id)) {
document.forms['list_ad'].submit();
}
else
return false;
});
EDIT2
的Model.ShowAdTypeList1是一個類型的SelectList並沒有選擇。 DropDownFore旨在將ST1值設置爲選中狀態。
EDIT3
普萊斯注意,這部分觀點其實是一個模板:http://weblogs.asp.net/rashid/archive/2009/11/27/extending-asp-net-mvc-2-templates.aspx。
這標題告訴讀者NOTHING。 –
那麼你在綁定之前設置了值? –
@Diodeus>固定 – Banshee