【发布时间】:2023-03-06 15:01:01
【问题描述】:
我在一个页面上有多个在运行时构建的下拉列表。我有一个带有选择列表的视图模型。我试过this post,这很棒,但有点不同,因为我在视图上有一组视图模型。我想我很接近,但我不确定如何正确使用 DropDownListFor。如何预先选择具有不同值的每个下拉列表?
虚拟机
public class categoryVm
{
public IEnumerable<SelectListItem> category { get; set; }
public string SelectedValue { get; set; }
}
查看
@model IEnumerable<categoryVm>
@foreach (var item in Model)
{
//i think i am missing something here???
@Html.DropDownListFor(**x => item.SelectedValue**, item.category)
}
控制器
name 是 StaticName 之一,它就像一个 Id,它在列表中。
var categories = new List<categoryVm>();
var selectlistcolumns = columns.Select(x => new SelectListItem
{
Value = x.StaticName,
Text = x.DisplayName
});
foreach (var column_loopVariable in dtCSV.Columns)
{
var category= new categoryVm();
category.category= selectlistcolumns;
category.SelectedValue = "name";
categories .Add(category);
}
return View(categories);
我更喜欢 mvc 解决方案而不是使用 javascript 更改 dom。
【问题讨论】:
-
您可以像预填充 TextBox 值一样预选 DDL 值。有意义吗?
标签: c# asp.net asp.net-mvc html.dropdownlistfor