ASP.Net MVC 3: optgroup support in Html.DropDownListFor

13,978

Solution 1

How can i make my DropDownListFor support optgroup?

There is no built-in support in the framework for this kind of drop down lists. You will have to write your own custom helper or generate the HTML manually (I would tend towards the first option).

Solution 2

Support for optgroups was added to ASP.Net MVC at version 5.2.

The Group property on SelectListItem allows you to specify a group for each item:

New SelectList constructors also allow you to provide the name of the field that contains the group title on the supplied list of items.

The HtmlHelper DropDownList and DropDownListFor methods now generate optgroup elements based on the groups included on the list of items.

Solution 3

This one seems nice: Extending the DropDownList to show the items grouped by a category, and it works for both MVC3 and MVC2.

Solution 4

Now Support For Optgroup In Dropdownlist .Net MVC 4

Please Check HTML5 DropDownList Optgroup Tag In MVC

@Html.DropDownGroupListFor(m => m.location_id, data, "-- Select --", new { 
    @data_val = "true",  // for Required Validation
    @data_val_required = "The Name field is required." // for Required Validation
})

Nuget Package avilable

Share:
13,978

Related videos on Youtube

Hieu Nguyen Trung
Author by

Hieu Nguyen Trung

I'm a .Net Developer

Updated on June 07, 2022

Comments

  • Hieu Nguyen Trung
    Hieu Nguyen Trung about 2 years

    How can i make my DropDownListFor support optgroup? Is there anyway to do it? Notice that this is DropDownListFor, means that it support DataAnnotation client validation

  • Darin Dimitrov
    Darin Dimitrov almost 13 years
    @Chrno Love, you have to download the ASP.NET MVC 3 source code. Don't browse it online as it is missing lots of code.
  • Serj Sagan
    Serj Sagan over 11 years
    Thanks for that link, works great for me in MVC 4 as well (the MVC 3 version)