首页 > 后端开发 > C++ > 如何在ASP.NET Core MVC中使用Select标记助手来创建下拉列表?

如何在ASP.NET Core MVC中使用Select标记助手来创建下拉列表?

Linda Hamilton
发布: 2025-01-28 21:01:09
原创
547 人浏览过

How Can I Use the Select Tag Helper in ASP.NET Core MVC to Create Dropdown Lists?

ASP.NET Core MVC 的 Select Tag Helper:轻松创建下拉列表

概述

Select Tag Helper 提供了一种简便的方法,使用模型数据在 ASP.NET Core MVC 视图中创建 <select> 元素(下拉列表)。

绑定到选项集合

假设视图模型包含一个 EmployeeId 属性和一个存储在 EmployeesList 属性中的员工列表:

<code class="language-csharp">public class MyViewModel
{
    public int EmployeeId { get; set; }
    public List<Employee> EmployeesList { get; set; }
}</code>
登录后复制

在视图中,您可以使用 Select Tag Helper 将选项绑定到 EmployeesList 集合:

<code class="language-html"><select asp-for="EmployeeId" asp-items="@Model.EmployeesList.OrderBy(e => e.FullName)"></select></code>
登录后复制
登录后复制

asp-items 属性指定下拉列表中显示的选项列表。OrderBy 方法用于按 FullName 属性对列表进行排序。

设置选中值

asp-for 属性指定将从下拉列表中选择的存储到视图模型中的属性。在本例中,它是 EmployeeId

<code class="language-html"><select asp-for="EmployeeId" asp-items="@Model.EmployeesList.OrderBy(e => e.FullName)"></select></code>
登录后复制
登录后复制

提交表单时,选定的值将自动绑定到视图模型的 EmployeeId 属性。

使用 SelectList

如果您的视图模型具有 List 属性,您可以直接将其用于 asp-items 属性:

<code class="language-csharp">public class MyViewModel
{
    public int EmployeeId { get; set; }
    public List<Employee> Employees { get; set; }
}</code>
登录后复制
<code class="language-html"><select asp-for="EmployeeId" asp-items="@Model.Employees"></select></code>
登录后复制

更多选项

  • 多选:asp-for 属性使用数组类型以启用多选。
  • 分组: 指定每个 SelectListItemGroup 属性以对下拉列表中的选项进行分组。
  • ViewBag: 您可以使用 @ViewBag 动态地将选项列表传递到视图:
<code class="language-csharp">public IActionResult Create()
{
    ViewBag.Employees = new List<SelectListItem> { ... };
    return View();
}</code>
登录后复制
<code class="language-html"><select asp-for="EmployeeId" asp-items="@ViewBag.Employees"></select></code>
登录后复制

以上是如何在ASP.NET Core MVC中使用Select标记助手来创建下拉列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板