Foros del Web » Programando para Internet » Jquery »

Problema con jquery en campos tipo radio.

Estas en el tema de Problema con jquery en campos tipo radio. en el foro de Jquery en Foros del Web. Hola en mi formulario tengo dos campos tipo "radio". Al checkear uno se muestran más campos y al checkear el otro, se ocultan los campos. ...
  #1 (permalink)  
Antiguo 21/10/2010, 04:30
 
Fecha de Ingreso: marzo-2008
Mensajes: 186
Antigüedad: 16 años, 1 mes
Puntos: 3
Problema con jquery en campos tipo radio.

Hola

en mi formulario tengo dos campos tipo "radio". Al checkear uno se muestran más campos y al checkear el otro, se ocultan los campos.

Tengo este código jquery:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.    $("#si").click(function(){
  3.       //lo que se desee hacer al recibir un clic el checkbox
  4.       if ($("#si").attr("checked")){
  5.       //se muestra los campos ocultos
  6.    $("#oculto").css("display", "block");
  7.    //de lo contrario se ocultan los campos
  8. }else{
  9.    $("#oculto").css("display", "none");
  10.    }
  11. //}
  12.    });
  13. });

y el HTML es éste:

Código HTML:
Ver original
  1. <input id="si" name="uno" type="radio" value="1" />
  2. <input id="no" name="uno" type="radio" value="1" />
  3. <div id="oculto">Oculto</div>
  4. </form>

El problema es que al checkear el campo "no" el div oculto sigue visible.

espero vuestra ayuda, gracias por anticipado
  #2 (permalink)  
Antiguo 21/10/2010, 09:33
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Problema con jquery en campos tipo radio.

¿Probaste poniéndole $("#oculto").hide();?
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #3 (permalink)  
Antiguo 21/10/2010, 13:11
 
Fecha de Ingreso: enero-2008
Ubicación: Buenos Aires
Mensajes: 305
Antigüedad: 16 años, 3 meses
Puntos: 14
Respuesta: Problema con jquery en campos tipo radio.

Mira, el problema es el siguiente, estás ejecutando una funcion que comprueba el valor del radio para ver que se selecciono, hasta ahí está bien.

Pero... si te fijas bien, esta línea: "$("#si").click(function(){......});". La comprobación solo lo haces cuando se selecciona el campo "id=si", entonces siempre que compruebes es porque el usuario selecciono "Si" y nunca se van a ocultar.

Te doy una posible solución:
Código HTML:
Ver original
  1.     <input name="uno" type="radio" value="si" class="toggleDatos" checked="checked" />
  2.     <input name="uno" type="radio" value="no" class="toggleDatos" />
  3.     <div id="oculto">Oculto</div>
  4. </form>

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.      var value = $(this).val();
  3.      if( value == "si" ) {
  4.      $("#oculto").show();
  5.      } else {
  6.      $("#oculto").hide();
  7.      }      
  8. });

Etiquetas: campos, radio, tipo
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 12:45.