This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The disabled property of the HTMLOptionElement is a boolean value that indicates whether the <option> element is unavailable to be selected. The property reflects the value of the disabled HTML attribute.
The property reflects the value of the disabled attribute on the <option> element itself. If an option is disabled because it is a child of an <optgroup> element that is disabled, the true of the HTMLOptGroupElement.disabled property is not inherited by the option itself.
A boolean value.
<label for="drink-options">Drink selection:</label> <select id="drink-options"> <option value="water">Water</option> <option value="lemonade">Lemonade</option> <option value="beer">Beer</option> <option value="whisky" disabled>Whisky</option> </select>
const drinks = document.querySelectorAll("#drink-options option");
console.log(drinks[0].disabled); // false
console.log(drinks[3].disabled); // true
drinks[1].disabled = true; // disables the beer option
| Specification |
|---|
| HTML> # dom-option-disabled> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
disabled |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
<option><select><optgroup>HTMLSelectElement.disabledHTMLOptGroupElement.disabledHTMLOptionElement.selectedHTMLOptionElement.indexHTMLOptionsCollection:disabled
© 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/disabled