Foros del Web » Programando para Internet » Javascript »

Validación de combo con JavaScript

Estas en el tema de Validación de combo con JavaScript en el foro de Javascript en Foros del Web. Buenas tardes, amigos. Estoy necesitando de su inestimable ayuda. Quiero validar desde el lado cliente, con javascript, que siempre se seleccione un valor en campo. ...
  #1 (permalink)  
Antiguo 06/03/2013, 15:20
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Pregunta Validación de combo con JavaScript

Buenas tardes, amigos.
Estoy necesitando de su inestimable ayuda.
Quiero validar desde el lado cliente, con javascript, que siempre se seleccione un valor en campo. Para esto estoy utilizando una pequeña función que no logro hacer funcionar:

Código:
<script>
function validarRecepcionado()
{
variable1=document.getElementById("recepcionado_por");
if(variable1 != "")
{
document.getElementById("enviar_datos").disabled="false";
}
}
</script>
Y la parte HTML es esta:

Código HTML:
<form method="POST" action="#">

<select name="recepcionado_por" id="recepcionado_por" onblur="validarRecepcionado()">
	<option value=""></option>
	<option value="Manzana">Manzana</option>
	<option value="Mandarina">Mandarina</option>
</select>

<input type="submit" value="Guardar" id="enviar_datos" disabled="true" />

</form> 
Lo que busco es que en el evendo onblur (al sacar el foco del combo) se habilite el botón Guardar.
Es esto posible? Si es viable, en donde me estoy equivocando?

Muchas gracias a todos.
Saludos.
  #2 (permalink)  
Antiguo 06/03/2013, 17:08
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Respuesta: Validación de combo con JavaScript

Que tal compañero, primero que nada el evento no se dispara por que en vez de onblur tienes que usar onchange, y tambien tienes que hacer unas correcciones en el manejo del atributo disabled, mira asi es como tiene que quedar:

Código Javascript:
Ver original
  1. function validarRecepcionado() {
  2.                 variable1 = document.getElementById("recepcionado_por");
  3.                 if (variable1.value != "-1") {
  4.                     document.getElementById("enviar_datos").removeAttribute("disabled");
  5.                 }
  6.                 else if (variable1.value == "-1") {
  7.                     console.info("nada");
  8.                     document.getElementById("enviar_datos").setAttribute("disabled","disabled");
  9.                 }
  10.             }

Y tu HTML asi:
Código HTML:
Ver original
  1. <form method="POST" action="#" method="post">
  2.  
  3.             <select name="recepcionado_por" id="recepcionado_por" onchange="validarRecepcionado()">
  4.                 <option value="-1">Seleccione una Fruta</option>
  5.                 <option value="Manzana">Manzana</option>
  6.                 <option value="Mandarina">Mandarina</option>
  7.             </select>
  8.  
  9.             <input type="submit" value="Guardar" id="enviar_datos" disabled="disabled" />
  10.  
  11.         </form>

Prueba y me comentas,

saludos
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #3 (permalink)  
Antiguo 07/03/2013, 15:37
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Validación de combo con JavaScript

Cita:
Iniciado por Reedyseth Ver Mensaje
Que tal compañero, primero que nada el evento no se dispara por que en vez de onblur tienes que usar onchange, y tambien tienes que hacer unas correcciones en el manejo del atributo disabled, mira asi es como tiene que quedar:

Código Javascript:
Ver original
  1. function validarRecepcionado() {
  2.                 variable1 = document.getElementById("recepcionado_por");
  3.                 if (variable1.value != "-1") {
  4.                     document.getElementById("enviar_datos").removeAttribute("disabled");
  5.                 }
  6.                 else if (variable1.value == "-1") {
  7.                     console.info("nada");
  8.                     document.getElementById("enviar_datos").setAttribute("disabled","disabled");
  9.                 }
  10.             }

Y tu HTML asi:
Código HTML:
Ver original
  1. <form method="POST" action="#" method="post">
  2.  
  3.             <select name="recepcionado_por" id="recepcionado_por" onchange="validarRecepcionado()">
  4.                 <option value="-1">Seleccione una Fruta</option>
  5.                 <option value="Manzana">Manzana</option>
  6.                 <option value="Mandarina">Mandarina</option>
  7.             </select>
  8.  
  9.             <input type="submit" value="Guardar" id="enviar_datos" disabled="disabled" />
  10.  
  11.         </form>

Prueba y me comentas,

saludos

Excelente!.
El único detalle es que cuando vuelves a seleccionar en el combo el valor "-1", el botón no se deshabilita, pero supongo que puedo vivir con eso, jeje.

Muchas gracias, Reedyseth!!

Etiquetas: combo, funcion, html, input, select
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 05:10.