Foros del Web » Programando para Internet » Javascript »

cambiar valor de input al presionar checkbox

Estas en el tema de cambiar valor de input al presionar checkbox en el foro de Javascript en Foros del Web. como puedo hacer si el usuario presiona un checkbox en un input X se muetre el valor del checkbox(si no esta seleccionado muestra blanco)...
  #1 (permalink)  
Antiguo 20/09/2006, 14:43
Avatar de giotari
Usuario no validado
 
Fecha de Ingreso: mayo-2003
Ubicación: Chile
Mensajes: 295
Antigüedad: 21 años
Puntos: 0
cambiar valor de input al presionar checkbox

como puedo hacer si el usuario presiona un checkbox en un input X se muetre el valor del checkbox(si no esta seleccionado muestra blanco)
  #2 (permalink)  
Antiguo 20/09/2006, 16:12
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 2 meses
Puntos: 62
;)

Código HTML:
<html>
<head>
<script type="text/javascript">
 function Cambia(txek)
  {   
   if(txek.checked)
    {
     document.formu.nombre.value="true";
    }
   else
    {
     document.formu.nombre.value="";
    }
  }
</script>
</head>
<body>
<form name="formu">
<input type="checkbox" name="caja" onClick="Cambia(this)" />
<input type="text" name="nombre" readonly />
</form>
</body>
</html> 
lo que no se es porque no funciona esto:

Código HTML:
<html>
<head>
<script type="text/javascript">
 function Cambia(txek,ph,nom)
  {   
   if(txek.checked)
    {
     document.ph.nom.value="true";
    }
   else
    {
     document.ph.nom.value="";
    }
  }
</script>
</head>
<body>
<form name="formu">
<input type="checkbox" name="caja" onClick="Cambia(this,'formu','nombre')" />
<input type="text" name="nombre" readonly />
</form>
</body>
</html> 
no tengo ni idea :S
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #3 (permalink)  
Antiguo 20/09/2006, 17:22
Avatar de giotari
Usuario no validado
 
Fecha de Ingreso: mayo-2003
Ubicación: Chile
Mensajes: 295
Antigüedad: 21 años
Puntos: 0
el primero me funciono sin problemas vale!
  #4 (permalink)  
Antiguo 18/10/2006, 11:07
 
Fecha de Ingreso: mayo-2006
Mensajes: 8
Antigüedad: 18 años
Puntos: 0
Solución cambiar valor de input al presionar checkbox

La segunda función no te puede funcionar porque le estás mandando un nombre de variable en vez de una referencia a un objeto en la línea:
document.ph.nom.value="true";
lo que debes hacer para que te funcione pasandole las variables es utilizar:
eval, así:
eval('document.'+ph+'.'+nom+'.value="true";');.
La función eval, evalúa (jejeje) la expresión que le pasas como argumento e intenta ejecutarla, así puedes obtener el resultado deseado.
Espero pueda servirte, lo único que tienes que hacer es reemplazar:
document.ph.nom.value="true"; por eval('document.'+ph+'.'+nom+'.value="true";');
document.ph.nom.value=""; por eval('document.'+ph+'.'+nom+'.value="";');
  #5 (permalink)  
Antiguo 18/10/2006, 11:12
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:

Bueno, no es obligatorio usar eval (personalmente me gusta muy poco su uso)

Si quieres referenciar un atributo con una variable también se puede poner la variable entre corchetes:

document[ph][nom].value;

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 16:59.