Foros del Web » Programando para Internet » Javascript »

Habilitar y desabilitar campos

Estas en el tema de Habilitar y desabilitar campos en el foro de Javascript en Foros del Web. Hola a todos. Estoy tratando de encontrar alguna funcion de javascript que me permita habilitar y desabilitar varios campos. por ejemplo la idea es que ...
  #1 (permalink)  
Antiguo 07/01/2005, 14:58
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
Habilitar y desabilitar campos

Hola a todos.
Estoy tratando de encontrar alguna funcion de javascript que me permita habilitar y desabilitar varios campos.
por ejemplo la idea es que con dos <input type="radio" > si selecciono Manual me desabilite el Select y todos los checkbox. y si selecciono Automatico me habilite todos los checkbox y el select.

Lo que encontre en los Faq me habilitan parte y no se como modificarlo para este caso. Si algien me puede dar una mano desde ya se lo agradesere.
Estos son los campos que utilizaria.

Código PHP:
<input type="radio" value="V1" checked name="Manual">Manual
<input type="radio" value="V1" checked name="Automa">Automatico
<select size="1" name="D1">
<
option>I  Indistinto        </option>
<
option>C2 Conjunto de a 2   </option>
<
option>C3 Conjunto de a 3   </option>
<
option>CD Conjunto Dinamico </option>
</
select>
<
input type="checkbox" name="C1" value="ON">
<
input type="checkbox" name="C2" value="ON">
<
input type="checkbox" name="C3" value="ON">
<
input type="checkbox" name="C4" value="ON"

Por otro lado tengo dos botones que me permiten seleccionar todos los checkbox e invertir la seleccion, y el boton de enviar.
desde ya muchas gracias y saludos a todos
  #2 (permalink)  
Antiguo 08/01/2005, 01:25
Avatar de TurKa  
Fecha de Ingreso: enero-2003
Ubicación: Gerli, Avellaneda
Mensajes: 543
Antigüedad: 21 años, 3 meses
Puntos: 4
Fíjate que he cambiado los nombres y valores de los radio para que puedas trabajar más cómodo con el script.
Lo que hace este código es que si el usuario selecciona Manual, desactiva todo y sino, en caso de elegir "Automático" activa todo.

Código HTML:
<SCRIPT LANGUAJE="JavaScript">
function habilitaDeshabilita(form) {
if(form.R1[0].checked == true) {
	form.D1.disabled = true;
	form.C1.disabled = true;
	form.C2.disabled = true;
	form.C3.disabled = true;
	form.C4.disabled = true;
	}
else {
	form.D1.disabled = false;
	form.C1.disabled = false;
	form.C2.disabled = false;
	form.C3.disabled = false;
	form.C4.disabled = false;
	}
}
</SCRIPT>
<FORM NAME=formulario>
<input type="radio" value="Manual" name="R1" onClick="habilitaDeshabilita(this.form)">Manual 
<input type="radio" value="Automatico" checked name="R1" onClick="habilitaDeshabilita(this.form)">Automatico 
<select size="1" name="D1"> 
<option>I  = Indistinto        </option> 
<option>C2 = Conjunto de a 2   </option> 
<option>C3 = Conjunto de a 3   </option> 
<option>CD = Conjunto Dinamico </option> 
</select> 
<input type="checkbox" name="C1" value="ON"> 
<input type="checkbox" name="C2" value="ON"> 
<input type="checkbox" name="C3" value="ON"> 
<input type="checkbox" name="C4" value="ON"> 
</FORM> 
__________________
Programación LAMP con Scrum y XP
www.eugeniabahit.com.com.ar
  #3 (permalink)  
Antiguo 10/01/2005, 10:25
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
Gracias Turka, la respuesta fue exelente.
Ahora te hago una pregunta.
La cosa es que no se la cantidad de checkbox, ya que me lo devuelve una consulta a mi base de datos, como hago para resolver esto, hay alguna forma de decir que todos los checkbox se habiliten o no.

Desde ya muchas gracias y saludos,
  #4 (permalink)  
Antiguo 10/01/2005, 10:55
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 Chuty

Esta es una modificación del código de TurKa. A ver si te sirve:
Código HTML:
function habilitaDeshabilita(form) {
  ele=form.elements;
  for(i=0;i<ele.length;i++)
    if(ele[i].type=='checkbox')
      ele[i].disabled=form.R1[0].checked;
}
Saludos,
  #5 (permalink)  
Antiguo 10/01/2005, 11:41
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Fíjate que con disabled, ese campo no se enviará, en cambio si le colocas readOnly="yes" ahí no podrán modificarlo pero si se envía su contenido...

Saludos !
__________________
Esteban Quintana
  #6 (permalink)  
Antiguo 10/01/2005, 13:57
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
Gracias JavierB, monoswim y Turka por su ayuda.
Pero me surgio algo, como podria hacer si al desabilitar los checkbox y el select no me dejen nada seleccionado, osea vacio.
Desde ya muchisimas gracias a todos ustedes ya que no que haria sin el foro y menos sin la ayuda de ustedes en Javascript.
Les mando un saludo y muchisimas gracias
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:22.