Twitter bootstrap ASP.NET MVC5下拉列表

Twitter bootstrap ASP.NET MVC5下拉列表,twitter-bootstrap,view,asp.net-mvc-5,html.dropdownlistfor,Twitter Bootstrap,View,Asp.net Mvc 5,Html.dropdownlistfor,有人能帮我吗。列表中的第一项总是空的,所以它不应该是这样的: @Html.DropDownList("EMRecordType_", null, "", new { @class = "form-control" }) 控制器中的代码: ViewBag.EMRecordType_ = new SelectList(db.EMRecords, "EMRecordType_", "EMRecordType_"); 我已经复制了你的问题,效果很好 @Html.DropDownList("EMRec

有人能帮我吗。列表中的第一项总是空的,所以它不应该是这样的:

@Html.DropDownList("EMRecordType_", null, "", new { @class = "form-control" })
控制器中的代码:

ViewBag.EMRecordType_ = new SelectList(db.EMRecords, "EMRecordType_", "EMRecordType_");

我已经复制了你的问题,效果很好

@Html.DropDownList("EMRecordType_", null, null, new { @class = "form-control" })


 public ActionResult Demo()
    {
        try
        {
            List<DemoModel> li = new List<Models.DemoModel>()
        {
            new DemoModel { ID = "1" , Value = "DemoModel1"},
            new DemoModel { ID = "2" , Value = "DemoModel2"},
            new DemoModel { ID = "3" , Value = "DemoModel3"},
            new DemoModel { ID = "4" , Value = "DemoModel4"},
            new DemoModel { ID = "5" , Value = "DemoModel5"},
            new DemoModel { ID = "6" , Value = "DemoModel6"},
            new DemoModel { ID = "7" , Value = "DemoModel7"},
        };

            ViewBag.EMRecordType_ = new SelectList(li, "ID", "Value");

            return View();
        }
        catch (Exception)
        {
            throw;
        }
    }
@Html.DropDownList(“EMRecordType”,null,null,new{@class=“form control”})
公共行动结果演示()
{
尝试
{
List li=新列表()
{
新的DemoModel{ID=“1”,Value=“DemoModel1”},
新的DemoModel{ID=“2”,Value=“DemoModel2”},
新的DemoModel{ID=“3”,Value=“DemoModel3”},
新的DemoModel{ID=“4”,Value=“DemoModel4”},
新的DemoModel{ID=“5”,Value=“DemoModel5”},
新的DemoModel{ID=“6”,Value=“DemoModel6”},
新的DemoModel{ID=“7”,Value=“DemoModel7”},
};
ViewBag.EMRecordType=新选择列表(li,“ID”,“Value”);
返回视图();
}
捕获(例外)
{
投掷;
}
}
输出


据我所知,您希望在下拉列表中添加一个空的默认值,如“请选择…”

尝试此操作以获得以下输出

@Html.DropDownList("empRecordTypeDropDown", (IEnumerable<SelectListItem>)ViewBag.EMRecordType_, "Please Select", new {@class="form-control"})
@Html.DropDownList(“empRecordTypeDropDown”,(IEnumerable)ViewBag.EMRecordType_,“请选择”,新建{@class=“form control”})

如果要添加完全空选项,请使用

@Html.DropDownList("empRecordTypeDropDown", (IEnumerable<SelectListItem>)ViewBag.EMRecordType_, "", new {@class="form-control"})
@Html.DropDownList(“empRecordTypeDropDown”,(IEnumerable)ViewBag.EMRecordType_389;,”,new{@class=“form control”})

  • 第一个参数采用非空字符串值,该值用作下拉列表的
    id
    name
  • 由于
    @Html.Dropdown
    需要一个
    System.Web.Mvc.SelectListItem
    的集合,因此您必须强制转换动态
    ViewBag

因为第三个参数是
(它生成一个带有该文本的选项,值为
null
)。只需删除它-
@Html.DropDownList(“EMRecordType_389;”,null,new{@class=“form control”})
现在列表上的第一个元素将上升并保持为默认值,我希望DropDownList默认值为空。当然,是的-使用该重载不会绑定到任何内容,如果不绑定任何内容,将始终选择第一个选项。现在还不清楚您想要做什么,但这是生成dropdownlist最糟糕的方法。要正确执行此操作,请参考“我编辑了问题,我添加了一个屏幕截图”中的代码,使用此代码,第一个项目列表现在作为默认值。我希望选择默认值,并在列表中包含来自数据库的项目。@Html.DropDownList(“empRecordTypeDropDown”,(IEnumerable)ViewBag.EMRecordType_389;,“请选择”,新建{@class=“form control”})这很好,但问题是,当我按箭头键时,列表中的第一个元素是请选择,然后是其他元素,我想第一次删除它,也不请选择,也不清空第一个元素,…只有列表中的元素database@Html.DropDownList(“empRecordTypeDropDown”,(IEnumerable)ViewBag.EMRecordType_389;,“请选择”,new{@class=“form control”})这可以正常工作,但问题是当我按箭头时,列表上的第一个元素是Please Select,然后是其他元素,我想第一次删除它,也不要Please Select,也不要清空第一个元素,…只有数据库中的列表元素