This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The HTMLOptionElement interface represents <option> elements and inherits all properties and methods of the HTMLElement interface.
Option()Returns a newly created HTMLOptionElement object. It has four parameters: the text to display, text, the value associated, value, the value of defaultSelected, and the value of selected. The last three parameters are optional.
Inherits properties from its parent, HTMLElement.
HTMLOptionElement.defaultSelectedHas a value of either true or false that shows the initial value of the selected HTML attribute, indicating whether the option is selected by default or not.
HTMLOptionElement.disabledHas a value of either true or false representing the value of the disabled HTML attribute, which indicates that the option is unavailable to be selected.
HTMLOptionElement.form Read only
A HTMLFormElement representing the same value as the form of the corresponding <select> element, if the option is a descendant of a <select> element, or null if none is found.
HTMLOptionElement.index Read only
A long representing the position of the option within the list of options it belongs to, in tree-order. If the option is not part of a list of options, like when it is part of the <datalist> element, the value is 0.
HTMLOptionElement.labelA string that reflects the value of the label HTML attribute, which provides a label for the option. If this attribute isn't specifically set, reading it returns the element's text content.
HTMLOptionElement.selectedHas a value of either true or false that indicates whether the option is currently selected.
HTMLOptionElement.textA string that contains the text content of the element.
HTMLOptionElement.valueA string that reflects the value of the value HTML attribute, if it exists; otherwise reflects value of the Node.textContent property.
Doesn't implement any specific method, but inherits methods from its parent, HTMLElement.
| Specification |
|---|
| HTML> # htmloptionelement> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
Option |
1 | 12 | 1 | ≤12.1 | 1.2 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
HTMLOptionElement |
1 | 12 | 1 | ≤12.1 | 1.2 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
defaultSelected |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
disabled |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
form |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
index |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
label |
1 | 12 | 71–7Before Firefox 7 thelabel property incorrectly returned an empty string if not defined instead of returning the element's text content. |
≤12.1 | 3 | 18 | 74–7Before Firefox for Android 7 thelabel property incorrectly returned an empty string if not defined instead of returning the element's text content. |
≤12.1 | 1 | 1.0 | 4.4 | 1 |
selected |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
text |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
value |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
<option><select><datalist><optgroup>HTMLOptionsCollectionHTMLSelectElementHTMLOptGroupElementHTMLElementHTMLCollection
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptionElement