Foros del Web » Programando para Internet » Javascript »

Habilitar/Deshabilitar un combo mediante un checkbox.

Estas en el tema de Habilitar/Deshabilitar un combo mediante un checkbox. en el foro de Javascript en Foros del Web. Hola. Necesito de la ayuda de ustedes, mis sabios compañeros de foro. Necesito hacer una pavada y no se como. En una paginita muy simple ...
  #1 (permalink)  
Antiguo 15/10/2008, 13:36
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Habilitar/Deshabilitar un combo mediante un checkbox.

Hola.
Necesito de la ayuda de ustedes, mis sabios compañeros de foro.
Necesito hacer una pavada y no se como.
En una paginita muy simple tengo una casilla tipo tilde y debajo un combo.
Lo que intento hacer es que ese combo permanezca deshabilitado ha menos que se tilde el checkbox.
Pero la onda es hacerlo sin recargar la página.

En código, una cosa así.
Código HTML:
     
<input type="checkbox" name="derivar" value="ON">

<br/>

<select name="derivado_usuario" disabled>
	         
   <option value=" " selected></option>
   <option value="opcion1" selected>opcion1</option>
   <option value="opcion2" selected>opcion2</option>

</select></td> 
Alguien puede ayudarme?
Muchas gracias!!
  #2 (permalink)  
Antiguo 15/10/2008, 13:43
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: Habilitar/Deshabilitar un combo mediante un checkbox.

claro, usa el onclick del checkbox
llamas a una función que determine si esta checked el checkbox y si lo esta habilitas o deshabilitas el combo.

Por ejemplo:

document.getElementById('devivar').checked --> esto en un if, si es cierto es porque esta checked

y habilitas un elemento usando

document.getElementById('derivado_usuario').disabl ed=true --> si es tru lo deshabilitas, si es false lo habilitas

OJO: recuerda que debes colocarle id a los elementos html!!!!
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #3 (permalink)  
Antiguo 15/10/2008, 14:01
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Habilitar/Deshabilitar un combo mediante un checkbox.

Cita:
Iniciado por the_web_saint Ver Mensaje
claro, usa el onclick del checkbox
llamas a una función que determine si esta checked el checkbox y si lo esta habilitas o deshabilitas el combo.

Por ejemplo:

document.getElementById('devivar').checked --> esto en un if, si es cierto es porque esta checked

y habilitas un elemento usando

document.getElementById('derivado_usuario').disabl ed=true --> si es tru lo deshabilitas, si es false lo habilitas

OJO: recuerda que debes colocarle id a los elementos html!!!!

Espectacular!!!
Ahora, te puedo pedir que -por favor- me pases el código completo así lo copio y lo pego? Porque no la tengo muy clara.
Gracias, fenómeno!!!
  #4 (permalink)  
Antiguo 15/10/2008, 14:57
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: Habilitar/Deshabilitar un combo mediante un checkbox.

Aquí está compañer@, no es distinto a lo que te dije. Solo debias unir las dos cosas.

Código PHP:
     
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Untitled Document</title>
<
script>
function 
deshabilita()
{
    if(
document.getElementById('derivar').checked)
    {
        
document.getElementById('derivado_usuario').disabled=false;
    }
    else
    {
        
document.getElementById('derivado_usuario').disabled=true;
    }
}
</script>
</head>

<body>
<input type="checkbox" name="derivar" id="derivar" value="ON" onclick="deshabilita()">

<br/>

<select name="derivado_usuario" id="derivado_usuario" disabled>
             
   <option value=" " selected></option>
   <option value="opcion1">opcion1</option>
   <option value="opcion2">opcion2</option>

</select>
</body>
</html> 
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #5 (permalink)  
Antiguo 15/10/2008, 15:40
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Habilitar/Deshabilitar un combo mediante un checkbox.

Cita:
Iniciado por the_web_saint Ver Mensaje
Aquí está compañer@, no es distinto a lo que te dije. Solo debias unir las dos cosas.

Código PHP:
     
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Untitled Document</title>
<
script>
function 
deshabilita()
{
    if(
document.getElementById('derivar').checked)
    {
        
document.getElementById('derivado_usuario').disabled=false;
    }
    else
    {
        
document.getElementById('derivado_usuario').disabled=true;
    }
}
</script>
</head>

<body>
<input type="checkbox" name="derivar" id="derivar" value="ON" onclick="deshabilita()">

<br/>

<select name="derivado_usuario" id="derivado_usuario" disabled>
             
   <option value=" " selected></option>
   <option value="opcion1">opcion1</option>
   <option value="opcion2">opcion2</option>

</select>
</body>
</html> 

Señor, lo suyo es simplemente magnánimo.
Te había entendido lo que me habías querido decir, pero no la tengo mucho con javascript, entonces te entiendo perfectamente cuando me hablabas de hacer un if y cambiarle las propiedades al combo, pero de ahí a hacerlo para mi era chino básico.
Nuevamente gracias por el código.
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 08:59.