Latest web development tutorials
 

Select options Collection

< Select Object

Example

Find out how many options there are in a specific drop-down list:

var x = document.getElementById("mySelect").options.length;

The result of x will be:

4
Try it Yourself »

More "Try it Yourself" examples below.


Definition and Usage

The options collection returns a collection of all <option> elements in a drop-down list.

Note: The elements in the collection are sorted as they appear in the source code.


Browser Support

Collection
options Yes Yes Yes Yes Yes

Syntax

selectObject.options

Properties

Property Description
length Returns the number of <option> elements in the collection.

Note: This property is read-only
selectedIndex Sets or returns the index of the selected <option> element in the collection (starts at 0)

Methods

Method Description
[index] Returns the <option> element from the collection with the specified index (starts at 0).

Note: Returns null if the index number is out of range
[add(option[,index])] Adds an <option> element into the collection at the specified index. If no index is specified, it inserts the option at the end of the collection
item(index) Returns the <option> element from the collection with the specified index (starts at 0).

Note: Returns null if the index number is out of range
namedItem(id) Returns the <option> element from the collection with the specified id.

Note: Returns null if the id does not exist
remove(index) Removes the <option> element with the specified index from the collection

Technical Details

DOM Version: Core Level 2 Document Object
Return Value: An HTMLOptionsCollection Object, representing all <option> elements in the <select> element. The elements in the collection are sorted as they appear in the source code

Examples

More Examples

Example

[index]

Get the text of the first option (index 0) in a drop-down list:

var x = document.getElementById("mySelect").options[0].text;

The result of x will be:

Apple
Try it Yourself »

Example

item(index)

Get the text of the first option (index 0) in a drop-down list:

var x = document.getElementById("mySelect").options.item(0).text;

The result of x will be:

Apple
Try it Yourself »

Example

namedItem(id)

Get the text of the option with id="orange" in a drop-down list:

var x = document.getElementById("mySelect").options.namedItem("orange").text;

The result of x will be:

Orange
Try it Yourself »

Example

Add a "Kiwi" option at index position "1" in a drop-down list:

var x = document.getElementById("mySelect");
var c = document.createElement("option");
c.text = "Kiwi";
x.options.add(c, 1);
Try it Yourself »

Example

Remove the option with index "1" from a drop-down list:

var x = document.getElementById("mySelect");
x.options.remove(1);
Try it Yourself »

Example

Loop through all options in a drop-down list, and output the text of each option:

var x = document.getElementById("mySelect");
var txt = "";
var i;
for (i = 0; i < x.length; i++) {
    txt = txt + x.options[i].text + "<br>";
}

The result of txt will be:

Apple
Orange
Pineapple
Banana
Try it Yourself »

Example

Choose an option in the drop-down list and output the text of the selected option in an element with id="demo":

var x = document.getElementById("mySelect");
var i = x.selectedIndex;
document.getElementById("demo").innerHTML = x.options[i].text;

The result could be:

Banana
Try it Yourself »

Example

Change the options in a drop-down list depending on the selected option in another drop-down list:

var carsAndModels = {};
carsAndModels['VO'] = ['V70', 'XC60', 'XC90'];
carsAndModels['VW'] = ['Golf', 'Polo', 'Scirocco', 'Touareg'];
carsAndModels['BMW'] = ['M6', 'X5', 'Z3'];

function ChangeCarList() {
    var carList = document.getElementById("car");
    var modelList = document.getElementById("carmodel");
    var selCar = carList.options[carList.selectedIndex].value;

    while (modelList.options.length) {
        modelList.remove(0);
    }

    var cars = carsAndModels[selCar];
    if (cars) {
        var i;
        for (i = 0; i < cars.length; i++) {
            var car = new Option(cars[i], i);
            modelList.options.add(car);
        }
    }
}
Try it Yourself »

< Select Object