Foros del Web » Programando para Internet » Javascript »

deshabilitar boton hasta completar campos

Estas en el tema de deshabilitar boton hasta completar campos en el foro de Javascript en Foros del Web. Hola, genios de la web. Necesito de su ayuda. Básicamente necesito que hasta que no se ingresen datos en los 4 campos de mi formulario, ...
  #1 (permalink)  
Antiguo 31/01/2013, 15:40
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 16 años, 4 meses
Puntos: 3
Pregunta deshabilitar boton hasta completar campos

Hola, genios de la web. Necesito de su ayuda.

Básicamente necesito que hasta que no se ingresen datos en los 4 campos de mi formulario, no se habilite el botón para enviar. Se entiende? Por Ejemplo

Código HTML:
<form action="recibe_datos.php" name="f1" method="post">

	<input type="text" name="fecha" id="fecha" />

	<input type="text" name="hora" id="hora" />

	<input type="text" name="usuario" id="usuario" />

	<textarea name="descripcion" id="descripcion"></textarea>

	<input type="submit" value="enviar datos" name="enviar_datos" id="enviar_datos" />

</form> 
Mi objetivo es que el botón "enviar datos" permanezca grisado (deshabilitado) hasta que el usuario haya ingresado datos en los 4 campos que se encuentran dentro del form.

Se que con JavaScript se puede hacer, pero no tengo idea como.
Podrán ayudarme con el código?

Muchas gracias a todos.
Saludos.
  #2 (permalink)  
Antiguo 31/01/2013, 17:08
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Respuesta: deshabilitar boton hasta completar campos

Hola:

Lo que quieres aparte de ser algo complejo (no imposible), convierte al formulario en "no accesible"...

Lo habitual es validar durante el envío (onsubmit="return validar(this))... y también validar en el servidor.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 31/01/2013, 18:40
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: deshabilitar boton hasta completar campos

Lo que te señala @caricatos es lo sensato, de todas formas podés jugar un poco con esto


Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>Submit disabled</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  <script type="text/javascript">
  7. //<![CDATA[
  8. // Definimos los campos que se han de verificar, contruimos un array con los id de los mismos
  9. var campos = ["campo1", "campo2", "campo3", "campo4"];
  10. function activar() {
  11. var c = 0;
  12. for(var i in campos){
  13. i = parseInt(i);
  14. var cadenaL = document.getElementById(campos[i]).value;
  15. // hacemos un trim previo a la verificación
  16. cadenaL = cadenaL.replace(/^\s+/g,'').replace(/\s+$/g,'')
  17. if(cadenaL != ""){
  18. c++; // incrementamos c por cada campo que no está vacío
  19. }
  20. if(c == (i+1)){ // si c es = al total de los campos habilitamos el submit
  21. document.getElementById('envia').disabled = false;
  22. }else{
  23. document.getElementById('envia').disabled = true;
  24. }
  25. }
  26. }
  27.  
  28. // agregamos el evento onkeyup dinamicamente a los campos requeridos
  29. window.onload = function(){
  30.     for(var e in campos){
  31.     var elem = document.getElementById(campos[e])
  32.     if (elem.addEventListener){
  33.     elem.addEventListener("keyup", function(){activar()}, false);
  34.     }else{ // <IE9
  35.         if (elem.attachEvent){
  36.         elem.attachEvent ("onkeyup", function () {activar(elem)});
  37.         }
  38.     }
  39.     }
  40. }
  41.  
  42. //]]>
  43. </head>
  44. <form action="#" method="post">
  45. <input type="text" id="campo1" value="" /><br />
  46. <input type="text" id="campo2" value="" /><br />
  47. <input type="text" id="campo3" value="" /><br />
  48. <input type="text" id="campo4" value="" /><br />
  49. <input type="submit" id="envia" name="envia" value="procesar" disabled="disabled"/><br />
  50. </form>
  51. </body>
  52. </html>

La función fue modificada por sugerencia de @sycrox2
Hay un problema básico en esta función, si bien cumple con lo que pedís, con que solo presionen la barra espaciadora en cada campo, se te va a habilitar el submit.
Deberías corregir esa situación (eliminar los espacios en blanco de la cadena antes de hacer el length) --> Corregido

Demo:
http://foros.emprear.com/javascript/...submit_ok.html
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 02/02/2013 a las 13:39 Razón: se agrega demo
  #4 (permalink)  
Antiguo 01/02/2013, 16:41
 
Fecha de Ingreso: diciembre-2012
Mensajes: 2
Antigüedad: 12 años
Puntos: 1
Respuesta: deshabilitar boton hasta completar campos

Aquí está el código de emprear con algunas correcciones para que no detecte los espacios que comentaba y también para arreglar un pequeño detalle (el botón se habilitaba al escribir únicamente en el último campo); en mi opinión es algo inseguro dejar la validación sólo en el lado del cliente, así que debería también procurar hacerla en el servidor.

Para controlar lo de espacios en blanco(barra espaciadora), utilicé el replace(/\s/g,'') donde /\s/g es una pequeña expresión regular que saca todos los espacios en blanco dentro de una cadena

Código:
<html>
<head>
<title>submit disabled</title> 
<script type="text/javascript">
	var habilita = 0;
			
	function camposHijos(){
		var cont = 0;
		for(var i = 0; i < document.f1.children.length-1; i++){
			if(document.f1.children[i].className == 'campo'){
				cont+=1;
			}
		}
		return cont;
	}
	
	function activar() {
		for(var i = 0; i < document.f1.children.length-1; i++){
			if(document.f1.children[i].className == 'campo'){
				if(document.f1.children[i].value.replace(/\s/g,'') != '')
					habilita+= 1;
				else 
					habilita = 0;
			}
		}
		if(habilita >= camposHijos())
			document.getElementById('enviar_datos').disabled = '';
		else
			document.getElementById('enviar_datos').disabled = 'disabled';	
	}
</script>
</head>
<body>
<form action="recibe_datos.php" name="f1" method="post">
	<input type="text" name="fecha" class="campo" id="fecha" onkeyup="activar();"/><br>
	<input type="text" name="hora" id="hora" class="campo" onkeyup="activar();"/><br>
	<input type="text" name="usuario" id="usuario" class="campo" onkeyup="activar();"/><br>
	<textarea name="descripcion" id="descripcion" class="campo" onkeyup="activar();"></textarea><br>
	<input type="submit" value="enviar datos" name="enviar_datos" id="enviar_datos" disabled/>
</form> 
</body>
</html>

Última edición por sycrox2; 01/02/2013 a las 16:53
  #5 (permalink)  
Antiguo 02/02/2013, 13:33
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: deshabilitar boton hasta completar campos

Cita:
Iniciado por sycrox2 Ver Mensaje
Aquí está el código de emprear con algunas correcciones para que no detecte los espacios que comentaba y también para arreglar un pequeño detalle (el botón se habilitaba al escribir únicamente en el último campo); en mi opinión es algo inseguro dejar la validación sólo en el lado del cliente, así que debería también procurar hacerla en el servidor.

Para controlar lo de espacios en blanco(barra espaciadora), utilicé el replace(/\s/g,'') donde /\s/g es una pequeña expresión regular que saca todos los espacios en blanco dentro de una cadena
Gracias por la corrección. Ya lo arreglé haciendo un par de modificaciones, y le hice ya que estamos el trim para los value y agregué el evento onkeyup dinamicamente

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>Submit disabled</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  <script type="text/javascript">
  7. //<![CDATA[
  8. // Definimos los campos que se han de verificar, contruimos un array con los id de los mismos
  9. var campos = ["campo1", "campo2", "campo3", "campo4"];
  10. function activar() {
  11. var c = 0;
  12. for(var i in campos){
  13. i = parseInt(i);
  14. var cadenaL = document.getElementById(campos[i]).value;
  15. // hacemos un trim previo a la verificación
  16. cadenaL = cadenaL.replace(/^\s+/g,'').replace(/\s+$/g,'')
  17. if(cadenaL != ""){
  18. c++; // incrementamos c por cada campo que no está vacío
  19. }
  20. if(c == (i+1)){ // si c es = al total de los campos habilitamos el submit
  21. document.getElementById('envia').disabled = false;
  22. }else{
  23. document.getElementById('envia').disabled = true;
  24. }
  25. }
  26. }
  27.  
  28. // agregamos el evento onkeyup dinamicamente a los campos requeridos
  29. window.onload = function(){
  30.     for(var e in campos){
  31.     var elem = document.getElementById(campos[e])
  32.     if (elem.addEventListener){
  33.     elem.addEventListener("keyup", function(){activar()}, false);
  34.     }else{ // <IE9
  35.         if (elem.attachEvent){
  36.         elem.attachEvent ("onkeyup", function () {activar(elem)});
  37.         }
  38.     }
  39.     }
  40. }
  41.  
  42. //]]>
  43. </head>
  44. <form action="#" method="post">
  45. <input type="text" id="campo1" value="" /><br />
  46. <input type="text" id="campo2" value="" /><br />
  47. <input type="text" id="campo3" value="" /><br />
  48. <input type="text" id="campo4" value="" /><br />
  49. <input type="submit" id="envia" name="envia" value="procesar" disabled="disabled"/><br />
  50. </form>
  51. </body>
  52. </html>

Demo
http://foros.emprear.com/javascript/...submit_ok.html

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 02/02/2013 a las 13:38
  #6 (permalink)  
Antiguo 02/02/2013, 19:50
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: deshabilitar boton hasta completar campos

Muchas gracias, Emprear (y a todos los demás también). Hoy mismo lo pruebo y luego les cuento.
Mil gracias nuevamente.
  #7 (permalink)  
Antiguo 02/02/2013, 20:58
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 16 años, 4 meses
Puntos: 3
Pregunta Respuesta: deshabilitar boton hasta completar campos

Cita:
Iniciado por emprear Ver Mensaje
Gracias por la corrección. Ya lo arreglé haciendo un par de modificaciones, y le hice ya que estamos el trim para los value y agregué el evento onkeyup dinamicamente

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>Submit disabled</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  <script type="text/javascript">
  7. //<![CDATA[
  8. // Definimos los campos que se han de verificar, contruimos un array con los id de los mismos
  9. var campos = ["campo1", "campo2", "campo3", "campo4"];
  10. function activar() {
  11. var c = 0;
  12. for(var i in campos){
  13. i = parseInt(i);
  14. var cadenaL = document.getElementById(campos[i]).value;
  15. // hacemos un trim previo a la verificación
  16. cadenaL = cadenaL.replace(/^\s+/g,'').replace(/\s+$/g,'')
  17. if(cadenaL != ""){
  18. c++; // incrementamos c por cada campo que no está vacío
  19. }
  20. if(c == (i+1)){ // si c es = al total de los campos habilitamos el submit
  21. document.getElementById('envia').disabled = false;
  22. }else{
  23. document.getElementById('envia').disabled = true;
  24. }
  25. }
  26. }
  27.  
  28. // agregamos el evento onkeyup dinamicamente a los campos requeridos
  29. window.onload = function(){
  30.     for(var e in campos){
  31.     var elem = document.getElementById(campos[e])
  32.     if (elem.addEventListener){
  33.     elem.addEventListener("keyup", function(){activar()}, false);
  34.     }else{ // <IE9
  35.         if (elem.attachEvent){
  36.         elem.attachEvent ("onkeyup", function () {activar(elem)});
  37.         }
  38.     }
  39.     }
  40. }
  41.  
  42. //]]>
  43. </head>
  44. <form action="#" method="post">
  45. <input type="text" id="campo1" value="" /><br />
  46. <input type="text" id="campo2" value="" /><br />
  47. <input type="text" id="campo3" value="" /><br />
  48. <input type="text" id="campo4" value="" /><br />
  49. <input type="submit" id="envia" name="envia" value="procesar" disabled="disabled"/><br />
  50. </form>
  51. </body>
  52. </html>

Demo
http://foros.emprear.com/javascript/...submit_ok.html

Saludos

Me funcionó perfectamente! Son unos grandes programadores!!
Sólo tengo una consulta para hacer:

Si uno de los campos que estoy validando, en lugar de un campo de texto es un Combo Select, como lo validarían?

Gracias, amigos.
  #8 (permalink)  
Antiguo 02/02/2013, 21:31
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: deshabilitar boton hasta completar campos

Lo tradicional con un select es hacer lo siguiente

supongamos que fuesen paises, incluis un primer campo con value vacio

Código HTML:
Ver original
  1. <form action="x.php" method="post" onsubmit="returm validar();">
  2. <select id="pais" name="pais">
  3. <option value="">Selecciona País</option>
  4. <option value="arg">Argentina</option>
  5. <option value="esp">España</option>

entonces
Código Javascript:
Ver original
  1. function validar(){
  2. var pais = document.getelementById('pais').value;
  3. if(pais == ""){
  4. alert('error, seleccione un pais);
  5. return false;
  6. }
  7. }

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 04/02/2013, 06:50
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: deshabilitar boton hasta completar campos

Cita:
Iniciado por emprear Ver Mensaje
Lo tradicional con un select es hacer lo siguiente

supongamos que fuesen paises, incluis un primer campo con value vacio

Código HTML:
Ver original
  1. <form action="x.php" method="post" onsubmit="returm validar();">
  2. <select id="pais" name="pais">
  3. <option value="">Selecciona País</option>
  4. <option value="arg">Argentina</option>
  5. <option value="esp">España</option>

entonces
Código Javascript:
Ver original
  1. function validar(){
  2. var pais = document.getelementById('pais').value;
  3. if(pais == ""){
  4. alert('error, seleccione un pais);
  5. return false;
  6. }
  7. }

SAludos
Muchas gracias, emprear.
Lamentablemente, no tengo como meter este código en el otro que me pasaro antes, así que veré como hago. La idea no era un mensaje ALERT sino jugar con el estado habilitado o deshabilitado del SUBMIT para enviar.
Pero ya me las arreglaré. No quiero robarte más tiempo.
Nuevamente gracias por todo.
  #10 (permalink)  
Antiguo 04/02/2013, 08:32
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: deshabilitar boton hasta completar campos

El problema para integrar las 2 cosas es el uso del evento onkeyup, solo sería posible si el select fuese operado por el cliente antes de completar los text boxes. Una alternativaes tener deshabilitados los textbox por defecto y habilitarlos solo al modificar le select.
Lo del alert es solo un ejemplo. Antes de continuar tenés que tener en claro que una validación efectiva solo puede hacerse del lado del servidor. Con javascript, en este caso solo estamos mejorando la experiencia del usuario
Pero algo como esto te puede servir

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>Botón Submit disabled con textBox y Select</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  <script type="text/javascript">
  7. //<![CDATA[
  8. // Definimos los campos que se han de verificar, contruimos un array con los id de los mismos
  9. var campos = ["campo1", "campo2", "campo3", "campo4"];
  10. var c;
  11. function activar() {
  12. c = 0;
  13. for(var i in campos){
  14. i = parseInt(i);
  15. var cadenaL = document.getElementById(campos[i]).value;
  16. // hacemos un trim previo a la verificación
  17. cadenaL = cadenaL.replace(/^\s+/g,'').replace(/\s+$/g,'')
  18. if(cadenaL != ""){
  19. c++; // incrementamos c por cada campo que no está vacío
  20. }
  21. if(c == (i+1)){ // si c es = al total de los campos habilitamos el submit
  22. document.getElementById('envia').disabled = false;
  23. }else{
  24. document.getElementById('envia').disabled = true;
  25. }
  26. }
  27. }
  28.  
  29. // la validación del select controla la habilitación de los campos de texto
  30. function validar_select(){
  31. var pais = document.getElementById('pais').value;
  32. console.log(c + '-' +campos.length );
  33.     if(pais != ""){
  34.         for(var d in campos){
  35.         document.getElementById(campos[d]).disabled = false;
  36.         }
  37.         if(c== campos.length){
  38.         document.getElementById('envia').disabled = false;
  39.         }
  40.     }else{
  41.         for(var d in campos){
  42.         document.getElementById(campos[d]).disabled = true;
  43.         }
  44.         document.getElementById('envia').disabled = true;
  45.     }
  46. }
  47.  
  48. // agregamos el evento onkeyup dinamicamente a los campos requeridos
  49. window.onload = function(){
  50.     for(var e in campos){
  51.     var elem = document.getElementById(campos[e]);
  52.     if (elem.addEventListener){
  53.     elem.addEventListener("keyup", function(){activar()}, false);
  54.     }else{ // <IE9
  55.         if (elem.attachEvent){
  56.         elem.attachEvent ("onkeyup", function () {activar(elem)});
  57.         }
  58.     }
  59.     }
  60. }
  61.  
  62. //]]>
  63. </head>
  64. <form action="#" method="post" onsubmit="alert('Form procesado');">
  65. <div>
  66. <select id="pais" name="pais" onchange="validar_select();">
  67. <option value="">Selecciona País</option>
  68. <option value="arg">Argentina</option>
  69. <option value="esp">España</option>
  70. <br />
  71. </div>
  72. <div>
  73. <input type="text" id="campo1" value="" disabled="disabled" /><br />
  74. <input type="text" id="campo2" value="" disabled="disabled" /><br />
  75. <input type="text" id="campo3" value="" disabled="disabled" /><br />
  76. <input type="text" id="campo4" value="" disabled="disabled" /><br />
  77. <input type="submit" id="envia" name="envia" value="procesar" disabled="disabled"/><br />
  78. </div>
  79. </form>
  80. </body>
  81. </html>

Demo
http://foros.emprear.com/javascript/...s_select.phtml

Y la recomendación final, dados tus comentarios es que empieces con un manual de Javascript, http://librosweb.es sería un buen punto de partida

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #11 (permalink)  
Antiguo 04/02/2013, 09:36
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: deshabilitar boton hasta completar campos

Cita:
Iniciado por emprear Ver Mensaje
El problema para integrar las 2 cosas es el uso del evento onkeyup, solo sería posible si el select fuese operado por el cliente antes de completar los text boxes. Una alternativaes tener deshabilitados los textbox por defecto y habilitarlos solo al modificar le select.
Lo del alert es solo un ejemplo. Antes de continuar tenés que tener en claro que una validación efectiva solo puede hacerse del lado del servidor. Con javascript, en este caso solo estamos mejorando la experiencia del usuario
Pero algo como esto te puede servir

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>Botón Submit disabled con textBox y Select</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  <script type="text/javascript">
  7. //<![CDATA[
  8. // Definimos los campos que se han de verificar, contruimos un array con los id de los mismos
  9. var campos = ["campo1", "campo2", "campo3", "campo4"];
  10. var c;
  11. function activar() {
  12. c = 0;
  13. for(var i in campos){
  14. i = parseInt(i);
  15. var cadenaL = document.getElementById(campos[i]).value;
  16. // hacemos un trim previo a la verificación
  17. cadenaL = cadenaL.replace(/^\s+/g,'').replace(/\s+$/g,'')
  18. if(cadenaL != ""){
  19. c++; // incrementamos c por cada campo que no está vacío
  20. }
  21. if(c == (i+1)){ // si c es = al total de los campos habilitamos el submit
  22. document.getElementById('envia').disabled = false;
  23. }else{
  24. document.getElementById('envia').disabled = true;
  25. }
  26. }
  27. }
  28.  
  29. // la validación del select controla la habilitación de los campos de texto
  30. function validar_select(){
  31. var pais = document.getElementById('pais').value;
  32. console.log(c + '-' +campos.length );
  33.     if(pais != ""){
  34.         for(var d in campos){
  35.         document.getElementById(campos[d]).disabled = false;
  36.         }
  37.         if(c== campos.length){
  38.         document.getElementById('envia').disabled = false;
  39.         }
  40.     }else{
  41.         for(var d in campos){
  42.         document.getElementById(campos[d]).disabled = true;
  43.         }
  44.         document.getElementById('envia').disabled = true;
  45.     }
  46. }
  47.  
  48. // agregamos el evento onkeyup dinamicamente a los campos requeridos
  49. window.onload = function(){
  50.     for(var e in campos){
  51.     var elem = document.getElementById(campos[e]);
  52.     if (elem.addEventListener){
  53.     elem.addEventListener("keyup", function(){activar()}, false);
  54.     }else{ // <IE9
  55.         if (elem.attachEvent){
  56.         elem.attachEvent ("onkeyup", function () {activar(elem)});
  57.         }
  58.     }
  59.     }
  60. }
  61.  
  62. //]]>
  63. </head>
  64. <form action="#" method="post" onsubmit="alert('Form procesado');">
  65. <div>
  66. <select id="pais" name="pais" onchange="validar_select();">
  67. <option value="">Selecciona País</option>
  68. <option value="arg">Argentina</option>
  69. <option value="esp">España</option>
  70. <br />
  71. </div>
  72. <div>
  73. <input type="text" id="campo1" value="" disabled="disabled" /><br />
  74. <input type="text" id="campo2" value="" disabled="disabled" /><br />
  75. <input type="text" id="campo3" value="" disabled="disabled" /><br />
  76. <input type="text" id="campo4" value="" disabled="disabled" /><br />
  77. <input type="submit" id="envia" name="envia" value="procesar" disabled="disabled"/><br />
  78. </div>
  79. </form>
  80. </body>
  81. </html>

Demo
http://foros.emprear.com/javascript/...s_select.phtml

Y la recomendación final, dados tus comentarios es que empieces con un manual de Javascript, http://librosweb.es sería un buen punto de partida

Saludos
Wow!
Esto es excelente!!
MUCHÍSIMAS GRACIAS!

Etiquetas: boton, campos, completar, deshabilitar, formulario, input
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 13:05.