This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The HTMLSelectElement.remove() method removes the element at the specified index from the options collection for this select element.
remove(index)
indexA zero-based integer for the index of the HTMLOptionElement to remove from the collection. If the index is not found the method has no effect.
None (undefined).
<select id="existingList" name="existingList"> <option value="1">Option: Value 1</option> <option value="2">Option: Value 2</option> <option value="3">Option: Value 3</option> </select>
let sel = document.getElementById("existingList");
sel.remove(1);
HTML is now:
<select id="existingList" name="existingList"> <option value="1">Option: Value 1</option> <option value="3">Option: Value 3</option> </select>
| Specification |
|---|
| HTML> # dom-select-remove> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
remove |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
Element.remove, the method that gets called when remove is called without arguments on a HTMLSelectElement.HTMLSelectElement that implements it.
© 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/HTMLSelectElement/remove