我正在使用DropDownListFor
在視圖中呈現下拉列表。不知何故,渲染列表不會選擇SelectListItem
,Selected
設置爲true
。ASP.NET MVC DropDownListFor不承諾SelectListItem.Selected
在控制器動作:
var selectList = sortedEntries.Select(entry => new SelectListItem
{
Selected = entry.Value.Equals(selectedValue),
Text = entry.Value,
Value = entry.Id
});
return View(new DropDownListModel
{
ListId = id,
SelectList = selectList,
OptionLabel = "Click to Select"
});
在視圖:
<%= Html.DropDownListFor(m => m.ListId,
Model.SelectList,
Model.OptionLabel,
new {@class="someClass"}) %>
我曾嘗試以下:
- 確保有一個且只有一個項目進行
Selected
設置爲true
。 - 刪除選項標籤參數。
- 刪除HTML屬性對象。
- 使用
SelectList
在DropDownListFor
:
Html.DropDownListFor(m => m.ListId,
new SelectList(Model.SelectList, "Value", "Text",
new List<SelectListItem>(Model.SelectList).Find(s => s.Selected)),
new {@class="someClass"})
任何建議,什麼地方出了錯?
編輯:
的更多信息:
- 這個動作是一個孩子的動作,用
HTML.RenderAction
ModelState.Remove(「ListId」)是關鍵。謝謝。 –