选择带有分组元素的Tag Helper

时间:2016-11-10 16:37:13

标签: asp.net-mvc tag-helpers

ASP.NET MVC Core中的Select tag helper是否具有分组选项,如下所示。我正在使用最新版本的ASP.NET Core和VS2015:

<select>
  <optgroup label="Swedish Cars">
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
  </optgroup>
  <optgroup label="German Cars">
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
  </optgroup>
</select>

显示

enter image description here

2 个答案:

答案 0 :(得分:2)

是。 SELECT标记助手可以为选项呈现opt组。您所要做的就是在创建新的Group对象时提供SelectListItem属性值。

var swedish = new SelectListGroup { Name="Swedish" };
var german = new SelectListGroup { Name="German" };

var optionItems = new List<SelectListItem>
{
  new SelectListItem { Value="vovlo", Text = "Volvo", Group = swedish },
  new SelectListItem { Value="saab", Text="Saab", Group = swedish },
  new SelectListItem { Value="mercedes", Text="Mercedes", Group = german } ,
  new SelectListItem { Value="audi", Text ="Audi", Group = german } 
}; 
// use optionItems for asp-items when using SELECT tag helper

答案 1 :(得分:1)

select标签帮助器有一个items参数,您可以在其中传递IEnumerable<SelectListItem>SelectListItem有一个属性Group,它是SelectListGroup的一个实例。换句话说,这实际上是关于如何设置SelectListItem的列表。如果已定义标记助手,则标记助手应生成optgroup