如果下拉列表没有选定值,有没有办法包含默认的空选项(或带有文本)?
James Newton-King
问问题
78320 次
4 回答
130
下面将在 ViewData["Menu"] 项中指定的 SelectList(或 IEnumerable)前面添加 string.Empty。选择将具有 id 和 name MenuID
。
<%= Html.DropDownList( "MenuID",
(IEnumerable<SelectListItem>)ViewData["Menu"],
string.Empty ) %>
于 2009-02-03T04:39:52.463 回答
7
例如:
Controller :
private void InitScreenInfoCollate()
{
IEnumerable<MstBrd> listbrd = ibrandRepository.GetItemsByUsercode("");
ViewBag.Brands = new SelectList(listbrd, "brd_cod", "brd_mei", null);
}
View :
@Html.DropDownList("Brands", null, string.Empty, new { @class = "form-control"})
结果 :
于 2016-02-01T17:00:22.603 回答
1
这个简单的解决方案适用于我的 mvc5 项目:
鉴于:
@{
Model.ModelItemsList.Add(new ModelItem{ });
SelectList modelItemSelectList = new SelectList(Model.ModelItemsList, "ModelItemID", "ModelItemName");
}
只需将新项目添加到List<>
要在视图中显示的项目即可。就我而言,我在我的List<ModelItem> ModelItemList
. 由于我的 ModelItemID 是一个 Guid,我必须在我的控制器方法中检查 Guid.Empty 并执行一些代码。就这样。
于 2014-06-16T22:19:46.597 回答
-8
这里提出的解决方案对我来说效果很好:http ://forums.asp.net/t/1142484.aspx/1
基本思想是,您将to的AppendDataBoundItems
属性设置为然后将其放入,这将成为您的默认项,所有数据绑定项都在其后。DropDownList
true
asp:ListItem
DropDownList
于 2013-02-01T21:39:25.700 回答