Wenn Sie versuchen, Optionen aus der Auswahl zu entfernen, bleibt immer eine übrig. Warum?
<select id="form-select">
<option>111</option>
<option>222</option>
<option>333</option>
</select>
Dieser JS funktioniert nicht:
var t = document.querySelector('#form-select');
for(var i of t.options) {
t.remove(i.index)
}
Und das funktioniert auch nicht:
for(var i of document.querySelector('#form-select').options) {
i.remove()
}
Ich weiß, dass es andere Lösungen gibt, um dies zu erreichen, aber ich würde gerne verstehen, warum es nicht so funktioniert, wie es soll
.optionsist kein Array, das die Ursache des Problems ist, sondern eine HTMLCollection, die live ist. Wäre es ein Array, wäre es statisch und es würde keine Probleme geben.