The HTMLOptionElement interface represents <option> elements and inherits all classes and methods of the HTMLElement interface.


Inherits properties from its parent, HTMLElement.

Name Type Description
defaultSelected Boolean Contains the initial value of the selected HTML attribute, indicating whether the option is selected by default or not.
disabled Boolean Reflects the value of the disabled HTML attribute, which indicates that the option is unavailable to be selected. An option can also be disabled if it is a child of an <optgroup> element that is disabled.
formRead only HTMLFormElement If the option is a descendent of a <select> element, then this property has the same value as the form property of the corresponding HTMLSelectElement object; otherwise, it is null.
indexRead only long 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.
label DOMString 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.
selected Boolean Indicates whether the option is currently selected.
text DOMString Contains the text content of the element.
value DOMString Reflects the value of the value HTML attribute, if it exists; otherwise reflects value of the Node.textContent property.


Inherits methods from its parent, HTMLElement.

Is a constructor creating an HTMLOptionElement object. It has four values: the text to display, text, the value associated, value, the value of defaultSelected, and the value of selected. The last three values are optional.


Specification Status Comment
WHATWG HTML Living Standard
The definition of 'HTMLOptionElement' in that specification.
Living Standard No change from HTML5.
The definition of 'HTMLOptionElement' in that specification.
Recommendation A constructor, Option(), has been added.
The form property can be the null value.
Document Object Model (DOM) Level 2 HTML Specification
The definition of 'HTMLOptionElement' in that specification.
Recommendation The selected property changed its meaning: it now indicates if the option is currently selected and no longer if it was initally selected.
The defaultSelected property is no longer read-only.
Document Object Model (DOM) Level 1 Specification
The definition of 'HTMLOptionElement' in that specification.
Recommendation Initial definition

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (Yes) (Yes) 1.0 (1.7 or earlier)[1] (Yes) (Yes) (Yes)
Feature Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support (Yes) (Yes) 1.0 (1.0)[1] (Yes) (Yes) (Yes)

[1] Prior to Gecko 7.0 (Firefox 7.0 / Thunderbird 7.0 / SeaMonkey 2.4), the label property incorrectly returned an empty string if not defined instead of returning the element's text content.

See also

  • The HTML element implementing this interface: <option>.

Document Tags and Contributors

 Last updated by: Sebastianz,