Foros del Web » Programando para Internet » Javascript »

Mostrar distinto select dependiendo de radio

Estas en el tema de Mostrar distinto select dependiendo de radio en el foro de Javascript en Foros del Web. Tengo un boton de radio con dos posibles valores, se podria hacer de alguna forma que dependiendo del que se selecione se muestre un select ...
  #1 (permalink)  
Antiguo 03/05/2004, 05:09
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 8 meses
Puntos: 0
Pregunta Mostrar distinto select dependiendo de radio

Tengo un boton de radio con dos posibles valores, se podria hacer de alguna forma que
dependiendo del que se selecione se muestre un select u otro.

Hombre<input type="radio" name="sexo" value="h">
Mujer<input type="radio" name="sexo" value="m">

Si es hombre quiero que se muestre este select.
<select name="estadocivil">
<option value="soltero" selected>Soltero
<option value="casado">Casado
<option value="separado">Separado
<option value="divorciado">Divorciado
<option value="viudo">Viudo
</select>
Si es mujer quiero que se muestre este select.
<select name="estadocivil">
<option value="soltera" selected>Soltera
<option value="casada">Casada
<option value="separada">Separada
<option value="divorciada">Divorciada
<option value="viuda">Viuda
</select>
Gracias por anticipado
  #2 (permalink)  
Antiguo 03/05/2004, 05:33
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 9 meses
Puntos: 1284
Hola sqa212:

Si los select tuviesen distinto nombre (name) se podría conseguir de distintas maneras, pero no creo que se pueden duplicar los nombres de los select (aunque si que se debe hacer con los radios y checkboxes)

Si le pones distinto nombre puedes poner el que te sirva con estilo display = block, y su atributo disabled a false..., y el otro con
con display = none y disabled a true...

Pero si no te interesa esta idea, siempre puedes generar dinámicamente las opciones del select...

Creo que en las FAQs está implementado.

Saludos
  #3 (permalink)  
Antiguo 03/05/2004, 13:01
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 8 meses
Puntos: 0
Si le pones distinto nombre puedes poner el que te sirva con estilo display = block, y su atributo disabled a false..., y el otro con
con display = none y disabled a true...


No te entiendo bien lo que me quieres decir. Podria usar distintos nombres en el select, eso no seria un problema.
  #4 (permalink)  
Antiguo 03/05/2004, 16:19
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 9 meses
Puntos: 1284
Hola otra vez:

Fíjate si te sirve este ejemplo:

Código PHP:
<html>
<
head>
<
script>
function 
selector(datoestado){
 
document.forms.prueba.estadocivilH.style.display = (dato == "m") ? "none" "inline";
 
document.forms.prueba.estadocivilM.style.display = (dato == "h") ? "none" "inline";
 
document.forms.prueba.estadocivilH.disabled = (dato == "m") ? true false;
 
document.forms.prueba.estadocivilM.disabled = (dato == "h") ? true false;
}
</script>
</head>
<body>
<form name=prueba method.get action=prueba.html>
Hombre<input type="radio" name="sexo" value="h" onclick="selector(this.value, this.checked)">
Mujer<input type="radio" name="sexo" value="m" onclick="selector(this.value, this.checked)">

<select name="estadocivilH" style="display: none">
<option value="soltero" selected>Soltero
<option value="casado">Casado
<option value="separado">Separado
<option value="divorciado">Divorciado
<option value="viudo">Viudo
</select>

<select name="estadocivilM" style="display: none">
<option value="soltera" selected>Soltera
<option value="casada">Casada
<option value="separada">Separada
<option value="divorciada">Divorciada
<option value="viuda">Viuda
</select>
<input type="submit" />
</form>
</body>
</html> 
Saludos
  #5 (permalink)  
Antiguo 05/05/2004, 17:31
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 8 meses
Puntos: 0
Gracias por tu respuesta funciona perfectamente.
el problema ahora es que ese select formaria parte de un formulario mas amplio que pensaba enviar con el metodo post,
Tu usas <form name=prueba method.get action=prueba.html>
¿Ahi alguna forma de integrar ambos formularios?
  #6 (permalink)  
Antiguo 05/05/2004, 22:03
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 9 meses
Puntos: 1284
Hola otra vez:

Puedes usar tranquilamente el método post, yo suelo usar get en las pruebas para que se muestre el resultado en la línea de dirección, pero no es obligatorio.

Saludos
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:10.