Foros del Web » Programando para Internet » Javascript »

Activar / Desactivar

Estas en el tema de Activar / Desactivar en el foro de Javascript en Foros del Web. Holas... Tengo una duda: Se puede activar / desactivar TODO el formulario por medio de un boton?? Gracias...
  #1 (permalink)  
Antiguo 27/02/2009, 17:28
 
Fecha de Ingreso: octubre-2008
Mensajes: 102
Antigüedad: 15 años, 6 meses
Puntos: 0
Activar / Desactivar

Holas... Tengo una duda:

Se puede activar / desactivar TODO el formulario por medio de un boton??

Gracias
  #2 (permalink)  
Antiguo 27/02/2009, 17:42
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Activar / Desactivar

Quizás con un bucle for como este:
Código javascript:
Ver original
  1. for (campos=this.form.getElementsByTagName('*'), i=0; actual = campos[i]; i++)
  2.     actual.disabled = true;
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 27/02/2009, 17:56
Avatar de jeybi  
Fecha de Ingreso: julio-2008
Ubicación: Mexico
Mensajes: 130
Antigüedad: 15 años, 9 meses
Puntos: 10
Respuesta: Activar / Desactivar

Código javascript:
Ver original
  1. function kill(boton){
  2.     for(var i = 0; i < boton.parentNode.elements.length; i++){
  3.     boton.parentNode.elements[i].setAttribute('disabled','disabled');
  4.     }
  5.     boton.removeAttribute('disabled');
  6. }

Ejemplo:

Código HTML:
<input type="button" onclick="kill(this);" value="Killme" /> 
La funcion deshabilita todo lo que se encontraba dentro del form que contenia al boton, exepto el boton mismo. Puedes intentar expandirla para que al hacer click otra ves, se reactive todo el formulario.
  #4 (permalink)  
Antiguo 27/02/2009, 20:12
 
Fecha de Ingreso: octubre-2008
Mensajes: 102
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Activar / Desactivar

Cita:
Iniciado por jeybi Ver Mensaje
Código javascript:
Ver original
  1. function kill(boton){
  2.     for(var i = 0; i < boton.parentNode.elements.length; i++){
  3.     boton.parentNode.elements[i].setAttribute('disabled','disabled');
  4.     }
  5.     boton.removeAttribute('disabled');
  6. }

Ejemplo:

Código HTML:
<input type="button" onclick="kill(this);" value="Killme" /> 
La funcion deshabilita todo lo que se encontraba dentro del form que contenia al boton, exepto el boton mismo. Puedes intentar expandirla para que al hacer click otra ves, se reactive todo el formulario.
Gracias, pero como podria hacerlo para que empieze DISABLE todo el formulario y con el boton se active?... Grax!
Cambiandole el "disable" por "enable" no me dio resultado :(


David el Grande como puedo usar ese codigo?... No se mucho de JS :(

Gracias

Última edición por Zidencjb; 27/02/2009 a las 20:19
  #5 (permalink)  
Antiguo 27/02/2009, 20:18
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Activar / Desactivar

Pues, lo usas en el botón con el cual quieras deshabilitar.

Si quieres que empiece deshabilitado puedes ejecutar ese código en el evento onload del documento, aunque deberías cambiar this.form por la referencia a tu formulario.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 27/02/2009, 20:46
Avatar de jeybi  
Fecha de Ingreso: julio-2008
Ubicación: Mexico
Mensajes: 130
Antigüedad: 15 años, 9 meses
Puntos: 10
Respuesta: Activar / Desactivar

Para que inicie desactivado:
Código javascript:
Ver original
  1. window.onload = function() {
  2.     var form= 'Name de tu form'
  3. var boton='id de tu boton para activar'
  4.     for(var i = 0; i < document.forms[form].elements.length; i++)
  5.     document.forms[form].elements[i].setAttribute('disabled','disabled');    
  6.  
  7. document.getElementById(boton).removeAttribute('disabled');
  8. }

Para que todo se active, simplemete crea una funcion como la de arriba pero enves de setAttribute() usa removeAttribute() y que carge al pusar el boton.
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:58.