ASP.NET MVC 下拉菜单默认值

时间:2021-06-19 14:12:09

标签: asp.net asp.net-mvc asp.net-mvc-4

请看我的代码。我正在尝试加载下拉菜单的默认值。 价值不接受设计。我正在将数据从帐户控制器加载到组合框,我已将项目列表添加到 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

赋值默认值

1 个答案:

答案 0 :(得分:0)

只需添加以下参数即可分配默认值

@Html.DropDownListFor(model => model.ReqType, new SelectList(ReqTypes,"Value","Text","Your_Default_Value"), "Select",new { @class = "js-dropdown" })< /p>