在ASP.NET MVC中,可以使用ViewBag或者ViewModel将数据传递到视图中,然后使用Html.DropDownListFor()方法动态预选项目。
首先,在控制器中将数据传递到视图中,例如:
public ActionResult Index()
{
ViewBag.Items = new List<SelectListItem>
{
new SelectListItem { Text = "Item 1", Value = "1" },
new SelectListItem { Text = "Item 2", Value = "2" },
new SelectListItem { Text = "Item 3", Value = "3" },
};
return View();
}
然后,在视图中使用Html.DropDownListFor()方法动态预选项目:
@Html.DropDownListFor(m => m.SelectedItem, (IEnumerable<SelectListItem>)ViewBag.Items, "Select an item")
在上面的代码中,m => m.SelectedItem是指将选中的值绑定到模型的SelectedItem属性上,而(IEnumerable<SelectListItem>)ViewBag.Items是指从ViewBag中获取SelectListItem集合。
如果要预先选择某个项目,可以在控制器中将该项目的值赋值给模型的SelectedItem属性,例如:
public ActionResult Index()
{
ViewBag.Items = new List<SelectListItem>
{
new SelectListItem { Text = "Item 1", Value = "1" },
new SelectListItem { Text = "Item 2", Value = "2" },
new SelectListItem { Text = "Item 3", Value = "3" },
};
var model = new MyModel();
model.SelectedItem = "2";
return View(model);
}
在上面的代码中,将SelectedItem属性设置为"2",则视图中的下拉列表将会预先选择"Item 2"项目。
领取专属 10元无门槛券
手把手带您无忧上云