Foros del Web » Programando para Internet » Javascript »

funcion numero comprendido en un rango

Estas en el tema de funcion numero comprendido en un rango en el foro de Javascript en Foros del Web. Hola amigas y amigos, veran tengo una funcion en la cual quiero implementarle que me muestre un mensaje de error si el numero introducido supera ...
  #1 (permalink)  
Antiguo 21/01/2016, 10:55
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 11 años, 11 meses
Puntos: 5
funcion numero comprendido en un rango

Hola amigas y amigos, veran tengo una funcion en la cual quiero implementarle que me muestre un mensaje de error si el numero introducido supera 105 o es inferior a 0.

Pero no me funciona.

Agradeceria cualquier ayuda, gracias:

EL id = enviar , pertenece al boton "enviar" del formulario evidentemente.

Código Javascript:
Ver original
  1. document.getElementById("enviar").addEventListener('click',validarEdad,false);
  2.  
  3.  
  4.         function validarEdad()
  5.  
  6.             {
  7.                 var edad = document.getElementById("edad").value;
  8.  
  9.  
  10.                 //si "edad" no es un numero o esta vacio el campo
  11.            
  12.                 if(isNaN(edad) || edad == '')
  13.  
  14.                     {
  15.                         //mensaje de error al no ser correcto el dato para la edad
  16.  
  17.                         var mensaje_error_edad = "Ponga una edad correcta, gracias";
  18.  
  19.                         document.getElementById("errores").innerHTML = mensaje_error_edad;
  20.  
  21.  
  22.  
  23.                         //anular el envio del formulario al no ser correcto el dato para el nombre
  24.  
  25.                         document.getElementById("formulario").onsubmit = function () { return false; };  
  26.  
  27.  
  28.  
  29.                         //ponemos el foco en el campo en el que hay que meter un dato correcto
  30.                        
  31.                         document.getElementById('edad').focus();
  32.                        
  33.                        
  34.                        
  35.                         //return mensaje_error_edad;      
  36.                     }
  37.                    
  38.                     else
  39.  
  40.                     if((edad > 105) && (edad < 0)) {
  41.                        
  42.                         var mensaje_error_max_edad = "El número debe estar comprendido entre 0 y 105, gracias";
  43.  
  44.                         document.getElementById("errores").innerHTML = mensaje_error_max_edad;
  45.                      }
  46.             }
  #2 (permalink)  
Antiguo 21/01/2016, 12:17
 
Fecha de Ingreso: junio-2011
Mensajes: 289
Antigüedad: 12 años, 10 meses
Puntos: 15
Respuesta: funcion numero comprendido en un rango

Hace un debug, console.log o un alert de la variable edad abajo de

Código Javascript:
Ver original
  1. var edad = document.getElementById("edad").value;

para poder ver el valor que trae
  #3 (permalink)  
Antiguo 21/01/2016, 14:34
Avatar de carlillos  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 245
Antigüedad: 17 años, 2 meses
Puntos: 21
Respuesta: funcion numero comprendido en un rango

Estas pidiendo un número mayor a 105 y menor a 0, ningún número cumple con esas condiciones. Tiene que ser mayor a 105 o menor a 0, cambia "&&" por "||".
Código Javascript:
Ver original
  1. if ((edad > 105) || (edad < 0)) {    
  2.     //Fuera de rango    
  3. }
  #4 (permalink)  
Antiguo 21/01/2016, 15:02
Avatar de ExpectedMoss0  
Fecha de Ingreso: enero-2016
Mensajes: 9
Antigüedad: 8 años, 3 meses
Puntos: 1
Información Respuesta: funcion numero comprendido en un rango

Hola compañero

Tal vez esto lo solucione
Código Javascript:
Ver original
  1. document.getElementById("enviar").addEventListener('click',validarEdad,false);
  2.  
  3.         function validarEdad()
  4.             {
  5.                 var edad = document.getElementById("edad").value;
  6.  
  7.                 //si "edad" no es un numero o esta vacio el campo
  8.                 if(isNaN(edad) || edad == ''){
  9.                     //mensaje de error al no ser correcto el dato para la edad
  10.                     var mensaje_error_edad = "Ponga una edad correcta, gracias";
  11.                     document.getElementById("errores").innerHTML = mensaje_error_edad;
  12.  
  13.                     //anular el envio del formulario al no ser correcto el dato para el nombre
  14.                     document.getElementById("formulario").onsubmit = function () { return false; };
  15.  
  16.                     //ponemos el foco en el campo en el que hay que meter un dato correcto
  17.                     document.getElementById('edad').focus();
  18.  
  19.                     //return mensaje_error_edad;  
  20.                 }else if( edad<0 || edad>105 ){
  21.                     var mensaje_error_max_edad = "El número debe estar comprendido entre 0 y 105, gracias";
  22.                     document.getElementById("errores").innerHTML = mensaje_error_max_edad;
  23.                 }
  24.             }
  #5 (permalink)  
Antiguo 23/01/2016, 04:30
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 11 años, 11 meses
Puntos: 5
Respuesta: funcion numero comprendido en un rango

Carlilos, ExpectedMoss0, teneis razon, madre mia si como no me habia dado cuenta, era imposible que me funcionara tenia que poner || en vez de &&.

Un error tonto por mi parte.. muchas gracias a los dos fenomenos!!!

Etiquetas: formulario, funcion, html, numero, rango
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 16:02.