如果没有下拉列表的选定值,是否可以包含默认的空选项(或文本)?
Answers:
下面将在string.Empty之前添加到ViewData [“ Menu”]项目中指定的SelectList(或IEnumerable)。选择将具有id和name MenuID
。
<%= Html.DropDownList( "MenuID",
(IEnumerable<SelectListItem>)ViewData["Menu"],
string.Empty ) %>
这个简单的解决方案适用于我的mvc5项目:
鉴于:
@{
Model.ModelItemsList.Add(new ModelItem{ });
SelectList modelItemSelectList = new SelectList(Model.ModelItemsList, "ModelItemID", "ModelItemName");
}
只需将新项目添加到List<>
要在视图中显示的项目即可。在我的情况下,我向中添加了一个空的“ ModelItem” List<ModelItem> ModelItemList
。由于我的ModelItemID是Guid,因此我必须在控制器方法中检查Guid.Empty并执行一些代码。就这样。
此处介绍的解决方案对我来说非常有效:http : //forums.asp.net/t/1142484.aspx/1
基本思想是,您将的AppendDataBoundItems
属性设置DropDownList
为true
,然后放入asp:ListItem
中DropDownList
,这将成为默认项,所有数据绑定项都位于其后。
-1
这是用于ASP.NET Web窗体,而不是MVC。