Foros del Web » Programando para Internet » Javascript »

No consigo desactivar campos de texto

Estas en el tema de No consigo desactivar campos de texto en el foro de Javascript en Foros del Web. Buenas he hecho lo siguiente un poco un FAQ de esta pagina pero no consigo que al clickear un checkbox me desactive los campos de ...
  #1 (permalink)  
Antiguo 30/05/2006, 09:52
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años, 1 mes
Puntos: 2
No consigo desactivar campos de texto

Buenas he hecho lo siguiente un poco un FAQ de esta pagina pero no consigo que al clickear un checkbox me desactive los campos de texto y mi codigo es el siguiente:
Código:
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
</head>
<script language="javascript1.5">
function Bloquear(){
    var valor;
	if(document.form1.checkbox.checked == "True"){
		valor=True;
		document.form1.fec_ini.disabled=valor;
		document.form1.fec_ini.disabled=valor;
	}else{
		valor=False;
		document.form1.fec_ini.disabled=valor;
		document.form1.fec_ini.disabled=valor;
	}
}
</script>
<body>
<form id="form1" name="form1" method="post" action="">
  <p>
    <input type="checkbox" name="checkbox" value="checkbox" onclick="Bloquear();" />
  checkbox</p>
  <blockquote>
    <p>fec_ini
      <input name="fec_ini" type="text" id="fec_ini" />
</p>
    <p>fec_fin
      <input name="fec_fin" type="text" id="fec_fin" />
    </p>
  </blockquote>
</form>
</body>
</html>
Alguien sabe a que se debe?Gracias
  #2 (permalink)  
Antiguo 30/05/2006, 09:57
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 utopiko

Recuerda que JavaScript distingue mayúsculas de minúsculas:

valor=true;
valor=false;

Si en la FAQ que has usado también está mal puesto, di cual es para que se pueda corregir.

Saludos,
  #3 (permalink)  
Antiguo 30/05/2006, 10:41
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años, 1 mes
Puntos: 2
Ya esta correcto lo de las minusculas y queda de la siguiente manera:

Código:
<html>
<head>

<title>Documento sin t&iacute;tulo</title>
</head>

<script language="javascript1.5">
function Bloquear(){
    var valor;
	if(document.form1.checkbox.checked == "true"){
		valor=true;
		document.form1.fec_ini.disabled=valor;
		document.form1.fec_fin.disabled=valor;
	}else{
		valor=false;
		document.form1.fec_ini.disabled=valor;
		document.form1.fec_fin.disabled=valor;
	}
}
</script>
<body>
<form id="form1" name="form1" method="post" action="">
  <p>
    <input type="checkbox" name="checkbox" value="checkbox" onclick="Bloquear();" />
  checkbox</p>
  <blockquote>
    <p>fec_ini
      <input name="fec_ini" type="text" id="fec_ini" />
</p>
    <p>fec_fin
      <input name="fec_fin" type="text" id="fec_fin" />
    </p>
  </blockquote>
</form>
</body>
</html>
Alguien sabe lo que me puede pasar?
  #4 (permalink)  
Antiguo 30/05/2006, 10:49
Avatar de braulito  
Fecha de Ingreso: abril-2004
Ubicación: Cusco - Perú
Mensajes: 597
Antigüedad: 20 años
Puntos: 8
Y también recuerda que true y false son valores booleanos y no cadenas, al momento de compararlo estás haciendo
Código:
if(document.form1.checkbox.checked == "True")
y debería ser sin comillas
Código:
if(document.form1.checkbox.checked == true)
o simplemente
Código:
if(document.form1.checkbox.checked)
__________________
Braulio Soncco
braulio at buayacorp dot com
Buayacorp - Programación y Diseño
  #5 (permalink)  
Antiguo 30/05/2006, 12:07
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años, 1 mes
Puntos: 2
Muchas gracias el fallo era las comillas del true!!!!!fallo de programador novato en Javascript(y en la programacion...)Sorry...
  #6 (permalink)  
Antiguo 30/05/2006, 12:15
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:

Parece que llego tarde, pero voy a plantear una simplificación:

function Bloquear(){
var valor = document.form1.checkbox.checked;
document.form1.fec_ini.disabled=valor;
document.form1.fec_fin.disabled=valor;
}

También podría pasarse pasarse el valor booleano como parámetro:

onclick="Bloquear(this.checked)" y no sería necesaria la primera línea.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 30/05/2006, 12:17
Avatar de braulito  
Fecha de Ingreso: abril-2004
Ubicación: Cusco - Perú
Mensajes: 597
Antigüedad: 20 años
Puntos: 8
Mas vale tarde que nunca :)
__________________
Braulio Soncco
braulio at buayacorp dot com
Buayacorp - Programación y Diseño
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 08:27.