¿Cómo borro todas las opciones en un cuadro desplegable?
Mi código funciona en IE pero falla en Safari, Firefox y Opera. (gran sorpresa)
document.getElementById("DropList").options.length=0;
Después de buscar, he aprendido que es el length=0
que no le gusta.
Lo he probado ...options=null
y var clear=0; ...length=clear
con el mismo resultado.
Estoy haciendo esto con varios objetos a la vez, por lo que estoy buscando un código JS liviano.
Para eliminar las opciones de un elemento HTML de select
, puede utilizar el remove()
método:
function removeOptions(selectElement) {
var i, L = selectElement.options.length - 1;
for(i = L; i >= 0; i--) {
selectElement.remove(i);
}
}
// using the function:
removeOptions(document.getElementById('DropList'));
Es importante quitar el options
revés; a medida que el remove()
método reorganiza la options
colección. ¡De esta manera, se garantiza que el elemento a eliminar todavía existe!
Si desea tener un script liviano, elija jQuery. En jQuery, la solución para eliminar todas las opciones será la siguiente:
$("#droplist").empty();
Probablemente no sea la solución más limpia, pero definitivamente es más sencilla que eliminar uno por uno:
document.getElementById("DropList").innerHTML = "";