gpt4 book ai didi

asp.net - 从 asp.net 核心应用程序中删除多项选择

转载 作者:行者123 更新时间:2023-12-05 08:20:51 26 4
gpt4 key购买 nike

我有List<SelectListItem>具有两个值的变量。我想在 html 中将其表示为下拉框,所以我这样做。

<div class="form-group row">
<label asp-for="Roles" class="col-sm-2 col-sm-offset-2 form-control-label"></label>
<div class="col-md-6">
<select asp-for="Roles" asp-items="@Model.Roles" class="form-control selectpicker bs-select-hidden"></select>
</div>
</div>

这段代码向我展示了包含这两项的列表,但它也会生成

multiple="multiple"

选择标签的属性。

如何才能不生成多个属性?

最佳答案

如果您的 asp-for 属性是 IEnumerable,Select Tag Helper 会自动使选择元素成为多个。避免这种情况的方法是使用基类(而不是集合)作为 asp-for 属性。 asp-items 属性应该仍然是一个集合,因为这些项目将成为选择列表中的选项。

在您的示例中,这只是将您的 asp-for="Roles"更改为 asp-for="Role"

<div class="form-group row">
<label asp-for="Roles" class="col-sm-2 col-sm-offset-2 form-control-label"></label>
<div class="col-md-6">
<select asp-for="Role" asp-items="@Model.Roles" class="form-control selectpicker bs-select-hidden"></select>
</div>

您可能需要调整传递给 View 的 View 模型,以便它可以访问基类角色以及要枚举的角色集合

ASP NET Core Select Tag Helper Reference

关于asp.net - 从 asp.net 核心应用程序中删除多项选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37430769/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com