Foros del Web » Programando para Internet » Javascript »

validar campo de formulario para que contenga un número...

Estas en el tema de validar campo de formulario para que contenga un número... en el foro de Javascript en Foros del Web. Antes que nada gracias desde ya!!! Hola, tengo un formulario que valido con un javascript, con el siguiente code <SCRIPT language=JavaScript> <!-- function ValidaCampos(theForm) { ...
  #1 (permalink)  
Antiguo 08/05/2005, 12:47
 
Fecha de Ingreso: noviembre-2002
Mensajes: 571
Antigüedad: 22 años
Puntos: 2
validar campo de formulario para que contenga un número...

Antes que nada gracias desde ya!!!

Hola, tengo un formulario que valido con un javascript, con el siguiente code

<SCRIPT language=JavaScript>
<!--
function ValidaCampos(theForm)
{
if (theForm.NOMBRE.value == "")
{
alert("Por favor, rellene el campo Nombre.");
theForm.NOMBRE.focus();
return (false);
}
if (theForm.APELLIDOS.value == "")
{
alert("Por favor, rellene el campo Centro.");
theForm.APELLIDOS.focus();
return (false);
}
if (theForm.EDAD.value == "")
{
alert("Por favor, rellene el campo Edad.");
theForm.EDAD.focus();
return (false);
}
}
//-->
</SCRIPT>

Como podría modificar este script para que comprobase que el campo
EDAD, cotenga un número, incluso si se puede que contenga un número que contenga un número que tenga entre 1 y 3 caracteres???

lo he intentado añadiendo

if (isNaN(theForm.EDAD.value)||(theForm.EDAD.value.le ngth<>3)
{
alert("Por favor, ingresa una Edad válida");
theForm.EDAD.focus();
return (false);
}

pero no me funciona.

Un saludo.
  #2 (permalink)  
Antiguo 08/05/2005, 14:19
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 11 meses
Puntos: 61
¿Y esto?

edad=parseInt(theForm.EDAD.value);
if (edad<1||edad>99)
{
alert("Por favor, ingresa una Edad válida");
theForm.EDAD.focus();
return (false);
}
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 08/05/2005, 17:12
 
Fecha de Ingreso: noviembre-2002
Mensajes: 571
Antigüedad: 22 años
Puntos: 2
Gracias por la ayuda Karlankas, efectivamente si metes
un numero a 1 o superior a 99 te devuelve el alert
"Por favor, ingresa un Edad válida" , pero si alguien
mete por ejemplo un texto como "aaaaa" que no
es un número lo da como válido.

Como podría modificar el código para que edenfique si
es un número lo que ingresa el usuario???

Casi me interesa más que identifique eso a que sea
un número de entre 1 y 99.

Un saludo.
  #4 (permalink)  
Antiguo 09/05/2005, 01:01
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola Zertiko

Modifica esta línea:

if (isNaN(edad)||edad<1||edad>99)

Saludos,
  #5 (permalink)  
Antiguo 09/05/2005, 01:46
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 11 meses
Puntos: 61
Fíjate que pensaba, tonto de mí, que si no era número le daría valor cero, pero no, le da valor NaN... estoy viejo ya . Menos mal que JavierB siempre está dispuesto!

Un saludo, Javier!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #6 (permalink)  
Antiguo 09/05/2005, 01:56
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Pues fijate que si hubiera contestado yo la primera vez ni siquiera hubiera pensado que pasaría si no era un número... es que soy más viejo que tú Va a ser cierto que se puede aprender de los errores.

Saludos,
  #7 (permalink)  
Antiguo 09/05/2005, 04:18
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 11 meses
Puntos: 61
En ese caso tú aprenderás bien poco...
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #8 (permalink)  
Antiguo 09/05/2005, 05:22
 
Fecha de Ingreso: noviembre-2002
Mensajes: 571
Antigüedad: 22 años
Puntos: 2
Muchas gracias JavierB y Karlankas, ya me funciona OK.

Un saludo.
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 18:45.