ASP.NET MVC 组合框值加载

Posted

技术标签:

【中文标题】ASP.NET MVC 组合框值加载【英文标题】:ASP.NET MVC Combo Box Value Load 【发布时间】:2021-09-06 22:17:36 【问题描述】:

这是关于组合框值处理问题。现在在创建操作中,我获取值列表并将其分配给临时数据。然后我将这些数据映射到组合框以填充创建视图。然后我将它提交到数据库的数据并保存。 然后我去编辑视图。它仅显示 Id 值。即使我加载了临时数据,也加载了但不是根据值。

这是我如何获取数据并分配给临时数据的代码

List<M_Department> DepList= db.Department.Where(x => x.Status == true).ToList();
List<SelectListItem> DepDropdown= DepList.Select(x => new SelectListItem  Text = x.DepName, Value = x.Id.ToString() ).ToList();

TempData["DepList"] = DepDropdown;

这就是我将这些 TemData 调用到视图的方式。

@
List<SelectListItem> Departments= (List<SelectListItem>)TempData.Peek("DepList");


<div class="row">
            <div class="col-md-6 col-sm-6">
                <div class="form-group row">
                   Department
                    <div class="col-sm-8">
                        @html.DropDownListFor(model => model.Dep_Id, Departments, new  @class = "js-dropdown" )
                        @Html.ValidationMessageFor(model => model.Dep_Id, "", new  @class = "text-danger" )
                    </div>
                </div>
            </div>
        </div>

编辑视图,它显示值。我想加载数据并选择该值

【问题讨论】:

【参考方案1】:

这对我有用。

 @Html.DropDownListFor(model => model.Dep_Id, new SelectList(Model.DepList, "Id", "DepName", "Please Select Department"), new @class = "js-dropdown" )

【讨论】:

以上是关于ASP.NET MVC 组合框值加载的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET MVC 多选列表框值未呈现

在按钮单击文本框值是空的使用 asp.net mvc 显示警报?

WPF组合框值和显示文本

ASP.NET MVC 3 级联组合框不起作用

获取asp.net MVC中下拉列表和文本框值的值

Datagridview 在更改列组合框值时执行代码