gpt4 book ai didi

asp.net-mvc - .Net MVC 5.2.3 : how to create a disabled option out of SelectListItem?

转载 作者:行者123 更新时间:2023-12-04 14:48:14 27 4
gpt4 key购买 nike

我正在尝试创建一个禁用了一些选项的下拉列表,以使它们无法选择。这是我的代码:

var places = new SelectList(new List<SelectListItem>
{
new SelectListItem { Selected = false, Text = "Virgin Islands", Value = "Virgin Islands"},
new SelectListItem { Selected = false, Text = "", Value = "", Disabled= true},
new SelectListItem { Selected = false, Text = "Canada", Value = "Canada", Disabled= true},
new SelectListItem { Selected = false, Text = "", Value = "", Disabled= true},
new SelectListItem { Selected = false, Text = "Other", Value = "Other"},
}, "Value", "Text");

但是,为禁用的 SelectListItem 生成的 HTML 仅仅是:

<option value=""></option>

如何生成以下 HTML

<option disabled="disabled"></option>

来自 SelectListItem?

谢谢!

最佳答案

Disabled仅当您使用 IEnumerable<SelectListItem> 时,才会尊重属性。 ,而不是 SelectList (在 SelectList 构造函数中,您只设置 ValueText 的属性),无论如何创建 IEnumerable<SelectListItem> 没有什么意义然后创建 SelectList当助手只接受 IEnumerable<SelectListItem>

var places = new List<SelectListItem>
{
new SelectListItem { Selected = false, Text = "Virgin Islands", Value = "Virgin Islands"},
new SelectListItem { Selected = false, Text = "", Value = "", Disabled= true},
....
};

然后在助手中

@Html.DropDownList(m => m.YourProperty, model.places) // or (IEnumerable<SelectListItem>)ViewBag.places

旁注:SelectList确实有一个重载的构造函数,它采用 IEnumerable disabledValues作为参数(refer documentation)

关于asp.net-mvc - .Net MVC 5.2.3 : how to create a disabled option out of SelectListItem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29424365/

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