请看我的代码。我正在尝试加载下拉菜单的默认值。 价值不接受设计。我正在将数据从帐户控制器加载到组合框,我已将项目列表添加到 Tempdata,然后在设计中我将列表分配给组合框。所以在这里加载表单时,我需要为组合框下拉列表设置默认值。请帮忙
这就是我从帐户控制器分配值的方式。
List<Request_Types> RequestTyleList = db.Request_Types.Where(r => r.Status == true).ToList();
List<SelectListItem> ReqTypeDropDown = RequestTyleList.Select(r => new SelectListItem { Text = r.Request_Type, Value = r.Id.ToString() }).ToList();
TempData["RequestTyleList"] = ReqTypeDropDown;
这就是我在视图中调用 TempData
的方式:
@{
ViewBag.Title = "Create";
Layout = "~/Views/Shared/_Layout.cshtml";
List<SelectListItem> ReqTypes = (List<SelectListItem>)TempData.Peek("RequestTyleList");
}
这是我将这些值分配给视图中的组合框的地方
<div class="col-md-6 col-sm-6">
<div class="form-group row">
@Html.LabelFor(model => model.ReqType, htmlAttributes: new { @class = "control-label col-md-3" })
<div class="col-sm-8">
@Html.DropDownListFor(model => model.ReqType, ReqTypes, new { @class = "js-dropdown" })
@Html.ValidationMessageFor(model => model.ReqType, "", new { @class = "text-danger" })
</div>
</div>
</div>
所以我在打开视图的时候,需要给ReqTypes
赋值默认值答案 0 :(得分:0)
只需添加以下参数即可分配默认值
@Html.DropDownListFor(model => model.ReqType, new SelectList(ReqTypes,"Value","Text","Your_Default_Value"), "Select",new { @class = "js-dropdown" })< /p>