Foros del Web » Programando para Internet » Javascript »

Eliminar un option de un select

Estas en el tema de Eliminar un option de un select en el foro de Javascript en Foros del Web. Buenas, tengo una preguntilla ... de la misma manera que se puede añadir una nueva opcion con: Código: document.formulario.campo.options[posicion] = new Option(texto, valor); Me gustaria ...
  #1 (permalink)  
Antiguo 08/07/2004, 04:15
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 6 meses
Puntos: 5
Eliminar un option de un select

Buenas, tengo una preguntilla ... de la misma manera que se puede añadir una nueva opcion con:

Código:
document.formulario.campo.options[posicion] = new Option(texto, valor);
Me gustaria saber si se puede elimiar una opcion, se me ocurre hacerlo volviendo a rellenar el campo select y no insertar la opcion seleccionada, pero eso no es bueno, ni factible ya que si tubiese 1 millon de opciones tardaria una barbaridad en rellenar denuevo el campo select ... por lo que me gustaria saber si se puede eliminar una opcion mediante su posicion.

Un saludo y muchas gracias
__________________
Usuario registrado de Linux #288725
  #2 (permalink)  
Antiguo 08/07/2004, 04:34
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola, epplestun.

Código HTML:
document.formulario.campo.options[posicion] = null;
Saludos,
  #3 (permalink)  
Antiguo 08/07/2004, 04:52
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola epplestun (nuevamente) y JavierB :

La solución de JavierB es la que más veces he visto, pero supongo que mediante la función removeChild también te podría servir:

var aBorrar = document.forms["formulario"]["campo"].options[1];
aBorrar.parentNode.removeChild(aBorrar);

Acabo de probarlo en explorer y me funcionó ...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 08/07/2004, 05:00
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 6 meses
Puntos: 5
Perfectamente funciona sobre Firefox 0.9 e IE ... asi que de lujo :D
__________________
Usuario registrado de Linux #288725
  #5 (permalink)  
Antiguo 24/02/2006, 05:26
 
Fecha de Ingreso: enero-2002
Mensajes: 838
Antigüedad: 22 años, 4 meses
Puntos: 1
tengo problemilla

hola:

tengo un select con 3 opciones y quiero borrar la que el usuario ha seleccionado, como lo puedo hacer???

he probado con

var aBorrar = document.forms["formulario"]["campo"].options[1];
aBorrar.parentNode.removeChild(aBorrar);

me da error en parentNode y es para borrar una opcion establecida por defecto en este caso la 1.

Gracias, un saludo
__________________
Muchas gracias, saludos.
  #6 (permalink)  
Antiguo 24/02/2006, 05:34
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola xias

Prueba esto otro:

document.formulario.campo.options[document.formulario.campo.selectedIndex] = null;

Saludos,
  #7 (permalink)  
Antiguo 24/02/2006, 05:42
 
Fecha de Ingreso: enero-2002
Mensajes: 838
Antigüedad: 22 años, 4 meses
Puntos: 1
perfecto¡¡¡

es una maquina¡¡¡

muchas gracias¡¡¡
__________________
Muchas gracias, saludos.
  #8 (permalink)  
Antiguo 24/02/2006, 14:49
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
hola tengo este problema

cuando quiero pasar seleccionar otro se me siguen quedando las opciones del segundo select
si antes habia seleccionado algo del primer select
<!-- basado en el código original propuesto por Kaopectate -->
<html>
<head>
<script language="JavaScript">

function addOpt(oCntrl, iPos, sTxt, sVal){

var selOpcion=new Option(sTxt, sVal);
eval(oCntrl.options[iPos]=selOpcion);
}

function cambia(oCntrl){
switch (document.frm.pais.selectedIndex){
case 1:
addOpt(oCntrl, 0, "Abrecartas", "1");
addOpt(oCntrl, 1, "Broche", "2");
addOpt(oCntrl, 2, "Desengrapador", "3");
addOpt(oCntrl, 3, "Engrapadora", "4");
addOpt(oCntrl, 4, "Boligrafo fino azul", "5");
addOpt(oCntrl, 5, "Boligrafo fino rojo", "6");
addOpt(oCntrl, 6, "Boligrafo fino negro", "7");
addOpt(oCntrl, 7, "Toner tinta negra 5158 hp laser jet", "8");
break;
case 2:
addOpt(oCntrl, 0, "Extintor", "10");
break;
case 3:
addOpt(oCntrl, 0, "Limpia vidrios", "11");
addOpt(oCntrl, 1, "Contenedor para basura", "12");
addOpt(oCntrl, 2, "Plumeros", "13");
break;
}
}
</script>
</head>
<body>
<form name="frm">
<table border="0" width="482">
<tr>
<td width="25">
Pais
</td>
<td width="89">
<select name="pais[]" id="pais" onchange="cambia(document.frm.ciudad)">
<option value=""></option>
<option value="2">Artículos de Oficina</option>
<option value="3">Artículos de Seguridad</option>
<option value="4">Artículos de Limpieza</option>
</select>
</td>
<td width="6">
&nbsp;
</td>
<td width="44">
Ciudad
</td>
<td width="296">
<select name="ciudad[]" id="ciudad" >

</select> </td>
</tr>
</table>
</form>
</body>
</html>


espero sus comentarios
saludos
__________________
gerardo
  #9 (permalink)  
Antiguo 03/06/2008, 04:47
 
Fecha de Ingreso: abril-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Respuesta: Eliminar un option de un select

Una dudilla que se me ha planteado:

Y si en vez de eliminar por la posición, queremos eliminar por el valor del option??

Se podria hacer una function que devolviera la pos de ese elemento, pero directamente, se podria?

Gracias, un saludo!
  #10 (permalink)  
Antiguo 01/11/2009, 08:54
 
Fecha de Ingreso: noviembre-2008
Mensajes: 4
Antigüedad: 15 años, 6 meses
Puntos: 1
Mensaje Respuesta: Eliminar un option de un select

Si quieres eliminar todo los options podrias usar esto

document.getElementById(nomselect).options.length= 0;
  #11 (permalink)  
Antiguo 01/11/2009, 08:59
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Eliminar un option de un select

Tema cerrado por viejo
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #12 (permalink)  
Antiguo 01/11/2009, 09:00
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Respuesta: Eliminar un option de un select

Hola amen19

Te recuerdo el aviso que había al final de este tema y que parece que no has leído.



Tema cerrado.

Ya hasta chocamos cerrando temas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 09:29.