【问题标题】:ASP.NET Core : Tag helper "select" is emptyASP.NET Core:标签助手“选择”为空
【发布时间】:2019-05-22 02:05:39
【问题描述】:

我需要一个带有选择元素的视图。我有以下 VM 类:

public class EditTicketVM
{
    public EditTicketVM()
    {
        Statuses = new SelectList(new List<SelectListItem>{
            new SelectListItem("Open", "open"),
            new SelectListItem("Pending", "pending"),
            new SelectListItem("Hold", "hold"),
            new SelectListItem("Solved", "solved"),
            new SelectListItem("Closed", "closed"),
        });

    }

    public string Description { get; set; }
    public string Subject { get; set; }
    public string Status { get; set; }

    public SelectList Statuses { get; set; }
}

并选择页面上的元素:

<select asp-for="Status" class="form-control" asp-items="Model.Statuses" />

但是在结果页面上这个元素是空的:

我的代码有什么不正确的地方?

【问题讨论】:

    标签: c# html select asp.net-core tag-helpers


    【解决方案1】:

    我已经测试了您的代码。问题出在您的 select 标签中。您正在使用自关闭选择标签。这行不通。编写您的选择标签如下:

    <select asp-for="Status" class="form-control" asp-items="Model.Statuses">
       <option value="">Select Status</option>
    </select>
    

    您的SelectList 初始化也有问题。您初始化SelectList 的方式不起作用。如下初始化您的SelectList:

    public EditTicketVM()
    {
       Statuses = new SelectList(new List<SelectListItem> {
           new SelectListItem(){Text = "Open", Value = "open"},
           new SelectListItem(){Text = "Pending", Value = "pending"},
           new SelectListItem(){Text = "Hold", Value = "hold"},
           new SelectListItem(){Text = "Solved", Value = "solved"},
           new SelectListItem(){Text = "Closed", Value = "closed"},
        },"Value","Text");
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-01
      • 2019-03-09
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      相关资源
      最近更新 更多