Chosen
Chosen is a JavaScript plugin for Prototype and jQuery that makes long, unwieldy select boxes much more user-friendly. For more information (including usage, explanation and faqs), check out the online documentation.
Standard Select
Turns This
Into This
Choose a Country...
- United States
- United Kingdom
- Afghanistan
- Albania
- Algeria
- American Samoa
- Andorra
- Angola
- Anguilla
- Antarctica
- Antigua and Barbuda
- Argentina
- Armenia
- Aruba
- Australia
- Austria
- Azerbaijan
- Bahamas
- Bahrain
- Bangladesh
- Barbados
- Belarus
- Belgium
- Belize
- Benin
- Bermuda
- Bhutan
- Bolivia
- Bosnia and Herzegovina
- Botswana
- Bouvet Island
- Brazil
- British Indian Ocean Territory
- Brunei Darussalam
- Bulgaria
- Burkina Faso
- Burundi
- Cambodia
- Cameroon
- Canada
- Cape Verde
- Cayman Islands
- Central African Republic
- Chad
- Chile
- China
- Christmas Island
- Cocos (Keeling) Islands
- Colombia
- Comoros
- Congo
- Congo, The Democratic Republic of The
- Cook Islands
- Costa Rica
- Cote D'ivoire
- Croatia
- Cuba
- Cyprus
- Czech Republic
- Denmark
- Djibouti
- Dominica
- Dominican Republic
- Ecuador
- Egypt
- El Salvador
- Equatorial Guinea
- Eritrea
- Estonia
- Ethiopia
- Falkland Islands (Malvinas)
- Faroe Islands
- Fiji
- Finland
- France
- French Guiana
- French Polynesia
- French Southern Territories
- Gabon
- Gambia
- Georgia
- Germany
- Ghana
- Gibraltar
- Greece
- Greenland
- Grenada
- Guadeloupe
- Guam
- Guatemala
- Guinea
- Guinea-bissau
- Guyana
- Haiti
- Heard Island and Mcdonald Islands
- Holy See (Vatican City State)
- Honduras
- Hong Kong
- Hungary
- Iceland
- India
- Indonesia
- Iran, Islamic Republic of
- Iraq
- Ireland
- Israel
- Italy
- Jamaica
- Japan
- Jordan
- Kazakhstan
- Kenya
- Kiribati
- Korea, Democratic People's Republic of
- Korea, Republic of
- Kuwait
- Kyrgyzstan
- Lao People's Democratic Republic
- Latvia
- Lebanon
- Lesotho
- Liberia
- Libyan Arab Jamahiriya
- Liechtenstein
- Lithuania
- Luxembourg
- Macao
- Macedonia, The Former Yugoslav Republic of
- Madagascar
- Malawi
- Malaysia
- Maldives
- Mali
- Malta
- Marshall Islands
- Martinique
- Mauritania
- Mauritius
- Mayotte
- Mexico
- Micronesia, Federated States of
- Moldova, Republic of
- Monaco
- Mongolia
- Montenegro
- Montserrat
- Morocco
- Mozambique
- Myanmar
- Namibia
- Nauru
- Nepal
- Netherlands
- Netherlands Antilles
- New Caledonia
- New Zealand
- Nicaragua
- Niger
- Nigeria
- Niue
- Norfolk Island
- Northern Mariana Islands
- Norway
- Oman
- Pakistan
- Palau
- Palestinian Territory, Occupied
- Panama
- Papua New Guinea
- Paraguay
- Peru
- Philippines
- Pitcairn
- Poland
- Portugal
- Puerto Rico
- Qatar
- Reunion
- Romania
- Russian Federation
- Rwanda
- Saint Helena
- Saint Kitts and Nevis
- Saint Lucia
- Saint Pierre and Miquelon
- Saint Vincent and The Grenadines
- Samoa
- San Marino
- Sao Tome and Principe
- Saudi Arabia
- Senegal
- Serbia
- Seychelles
- Sierra Leone
- Singapore
- Slovakia
- Slovenia
- Solomon Islands
- Somalia
- South Africa
- South Georgia and The South Sandwich Islands
- South Sudan
- Spain
- Sri Lanka
- Sudan
- Suriname
- Svalbard and Jan Mayen
- Swaziland
- Sweden
- Switzerland
- Syrian Arab Republic
- Taiwan, Republic of China
- Tajikistan
- Tanzania, United Republic of
- Thailand
- Timor-leste
- Togo
- Tokelau
- Tonga
- Trinidad and Tobago
- Tunisia
- Turkey
- Turkmenistan
- Turks and Caicos Islands
- Tuvalu
- Uganda
- Ukraine
- United Arab Emirates
- United Kingdom
- United States
- United States Minor Outlying Islands
- Uruguay
- Uzbekistan
- Vanuatu
- Venezuela
- Viet Nam
- Virgin Islands, British
- Virgin Islands, U.S.
- Wallis and Futuna
- Western Sahara
- Yemen
- Zambia
- Zimbabwe
Multiple Select
Turns This
Into This
- United States
- United Kingdom
- Afghanistan
- Albania
- Algeria
- American Samoa
- Andorra
- Angola
- Anguilla
- Antarctica
- Antigua and Barbuda
- Argentina
- Armenia
- Aruba
- Australia
- Austria
- Azerbaijan
- Bahamas
- Bahrain
- Bangladesh
- Barbados
- Belarus
- Belgium
- Belize
- Benin
- Bermuda
- Bhutan
- Bolivia
- Bosnia and Herzegovina
- Botswana
- Bouvet Island
- Brazil
- British Indian Ocean Territory
- Brunei Darussalam
- Bulgaria
- Burkina Faso
- Burundi
- Cambodia
- Cameroon
- Canada
- Cape Verde
- Cayman Islands
- Central African Republic
- Chad
- Chile
- China
- Christmas Island
- Cocos (Keeling) Islands
- Colombia
- Comoros
- Congo
- Congo, The Democratic Republic of The
- Cook Islands
- Costa Rica
- Cote D'ivoire
- Croatia
- Cuba
- Cyprus
- Czech Republic
- Denmark
- Djibouti
- Dominica
- Dominican Republic
- Ecuador
- Egypt
- El Salvador
- Equatorial Guinea
- Eritrea
- Estonia
- Ethiopia
- Falkland Islands (Malvinas)
- Faroe Islands
- Fiji
- Finland
- France
- French Guiana
- French Polynesia
- French Southern Territories
- Gabon
- Gambia
- Georgia
- Germany
- Ghana
- Gibraltar
- Greece
- Greenland
- Grenada
- Guadeloupe
- Guam
- Guatemala
- Guinea
- Guinea-bissau
- Guyana
- Haiti
- Heard Island and Mcdonald Islands
- Holy See (Vatican City State)
- Honduras
- Hong Kong
- Hungary
- Iceland
- India
- Indonesia
- Iran, Islamic Republic of
- Iraq
- Ireland
- Israel
- Italy
- Jamaica
- Japan
- Jordan
- Kazakhstan
- Kenya
- Kiribati
- Korea, Democratic People's Republic of
- Korea, Republic of
- Kuwait
- Kyrgyzstan
- Lao People's Democratic Republic
- Latvia
- Lebanon
- Lesotho
- Liberia
- Libyan Arab Jamahiriya
- Liechtenstein
- Lithuania
- Luxembourg
- Macao
- Macedonia, The Former Yugoslav Republic of
- Madagascar
- Malawi
- Malaysia
- Maldives
- Mali
- Malta
- Marshall Islands
- Martinique
- Mauritania
- Mauritius
- Mayotte
- Mexico
- Micronesia, Federated States of
- Moldova, Republic of
- Monaco
- Mongolia
- Montenegro
- Montserrat
- Morocco
- Mozambique
- Myanmar
- Namibia
- Nauru
- Nepal
- Netherlands
- Netherlands Antilles
- New Caledonia
- New Zealand
- Nicaragua
- Niger
- Nigeria
- Niue
- Norfolk Island
- Northern Mariana Islands
- Norway
- Oman
- Pakistan
- Palau
- Palestinian Territory, Occupied
- Panama
- Papua New Guinea
- Paraguay
- Peru
- Philippines
- Pitcairn
- Poland
- Portugal
- Puerto Rico
- Qatar
- Reunion
- Romania
- Russian Federation
- Rwanda
- Saint Helena
- Saint Kitts and Nevis
- Saint Lucia
- Saint Pierre and Miquelon
- Saint Vincent and The Grenadines
- Samoa
- San Marino
- Sao Tome and Principe
- Saudi Arabia
- Senegal
- Serbia
- Seychelles
- Sierra Leone
- Singapore
- Slovakia
- Slovenia
- Solomon Islands
- Somalia
- South Africa
- South Georgia and The South Sandwich Islands
- South Sudan
- Spain
- Sri Lanka
- Sudan
- Suriname
- Svalbard and Jan Mayen
- Swaziland
- Sweden
- Switzerland
- Syrian Arab Republic
- Taiwan, Republic of China
- Tajikistan
- Tanzania, United Republic of
- Thailand
- Timor-leste
- Togo
- Tokelau
- Tonga
- Trinidad and Tobago
- Tunisia
- Turkey
- Turkmenistan
- Turks and Caicos Islands
- Tuvalu
- Uganda
- Ukraine
- United Arab Emirates
- United Kingdom
- United States
- United States Minor Outlying Islands
- Uruguay
- Uzbekistan
- Vanuatu
- Venezuela
- Viet Nam
- Virgin Islands, British
- Virgin Islands, U.S.
- Wallis and Futuna
- Western Sahara
- Yemen
- Zambia
- Zimbabwe
<optgroup> Support
Single Select with Groups
Multiple Select with Groups
- NFC EAST
- Dallas Cowboys
- New York Giants
- Philadelphia Eagles
- Washington Redskins
- NFC NORTH
- Chicago Bears
- Detroit Lions
- Green Bay Packers
- Minnesota Vikings
- NFC SOUTH
- Atlanta Falcons
- Carolina Panthers
- New Orleans Saints
- Tampa Bay Buccaneers
- NFC WEST
- Arizona Cardinals
- St. Louis Rams
- San Francisco 49ers
- Seattle Seahawks
- AFC EAST
- Buffalo Bills
- Miami Dolphins
- New England Patriots
- New York Jets
- AFC NORTH
- Baltimore Ravens
- Cincinnati Bengals
- Cleveland Browns
- Pittsburgh Steelers
- AFC SOUTH
- Houston Texans
- Indianapolis Colts
- Jacksonville Jaguars
- Tennessee Titans
- AFC WEST
- Denver Broncos
- Kansas City Chiefs
- Oakland Raiders
- San Diego Chargers
Selected and Disabled Support
Chosen automatically highlights selected options and removes disabled options.
Single Select
Multiple Select
- American Black Bear
- Asiatic Black Bear
- Brown Bear
- Giant Panda
- Sloth Bear
- Polar Bear
It is also possible to prevent selected options being deselected by also making them disabled.
- American Black Bear
- Asiatic Black Bear
- Brown Bear
- Giant Panda
- Polar Bear
Default Text Support
Chosen automatically sets the default field text ("Choose a country...") by reading the select element's data-placeholder value. If no data-placeholder value is present, it will default to "Select Some Option" or "Select Some Options" depending on whether the select is single or multiple. You can change these elements in the plugin js file as you see fit.
<select data-placeholder="Choose a country..." style="width:350px;" multiple class="chzn-select">
Note: on single selects, the first element is assumed to be selected by the browser. To take advantage of the default text support, you will need to include a blank option as the first element of your select list.
No Results Text Support
Setting the "No results" search text is as easy as passing an option when you create Chosen:
$(".chzn-select").chosen({no_results_text: "No results matched"});
Limit Selected Options in Multiselect
You can easily limit how many options can user select:
$(".chzn-select").chosen({max_selected_options: 5});
If you try to select another option with limit reached liszt:maxselected
event is triggered:
$(".chzn-select").bind("liszt:maxselected", function () { ... });
Allow Deselect on Single Selects
When a single select box isn't a required field, you can set allow_single_deselect: true
and Chosen will add a UI element for option deselection. This will only work if the first option has blank text.
Right to Left Support
Chosen supports right to left select boxes too. just add "chzn-rtl"
in addition to "chzn-select"
to your select tags and you are good to go.
<select class="chzn-select chzn-rtl">
Single right to left select
Multiple right to left select
- American Black Bear
- Asiatic Black Bear
- Brown Bear
- Giant Panda
- Sloth Bear
- Polar Bear
Change / Update Events
-
Form Field Change
When working with form fields, you often want to perform some behavior after a value has been selected or deselected. Whenever a user selects a field in Chosen, it triggers a "change" event* on the original form field. That let's you do something like this:
$("#form_field").chosen().change( … );
Note: Prototype doesn't offer support for triggering standard browser events. Event.simulate is required to trigger the change event when using the Prototype version.
-
Updating Chosen Dynamically
If you need to update the options in your select field and want Chosen to pick up the changes, you'll need to trigger the "liszt:updated" event on the field. Chosen will re-build itself based on the updated content.
- jQuery Version:
$("#form_field").trigger("liszt:updated");
- Prototype Version:
Event.fire($("form_field"), "liszt:updated");
Setup (for jQuery)
Using Chosen is easy as can be.
- Download the plugin and copy the chosen files to your app.
- Activate the plugin on the select boxes of your choice:
$(".chzn-select").chosen()
- Disco.