【发布时间】:2011-07-14 06:54:31
【问题描述】:
我正在使用DropDownListFor 在视图中呈现下拉列表。不知何故,呈现的列表不会选择SelectListItem,而Selected 设置为true。
在控制器动作中:
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 属性对象。
- 在
DropDownListFor中使用SelectList:
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
【问题讨论】:
标签: asp.net-mvc drop-down-menu selectlist html.dropdownlistfor selectlistitem