Foros del Web » Programando para Internet » Javascript »

Validar numero

Estas en el tema de Validar numero en el foro de Javascript en Foros del Web. Hola a todos, necesito validar solo numeros negativos, positivos y decimales. tendria que dejar poner el simbolo negativo (-) solo al principio del numero, la ...
  #1 (permalink)  
Antiguo 20/07/2008, 13:41
Avatar de Sebastian1046  
Fecha de Ingreso: junio-2003
Mensajes: 278
Antigüedad: 20 años, 10 meses
Puntos: 0
Validar numero

Hola a todos, necesito validar solo numeros negativos, positivos y decimales.
tendria que dejar poner el simbolo negativo (-) solo al principio del numero, la coma o punto (uno u otro) una sola vez en todo el numero y despues de que coloco algun numero; y solo permitir dos numeros despues de la coma o punto.

Ej:
0.5 bien
-0.5 bien
0-.5 mal
0.0.5 mal
500.0000 mal
550.00 bien

Es complicado, pero quiero despues realizar operaciones matematicas y si se pone un numero mal ya no podria.

Saludos y gracias
__________________
Agradesco infinitamente a toda la gente del foro que me ayudo/a.
  #2 (permalink)  
Antiguo 20/07/2008, 14:07
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 15 años, 11 meses
Puntos: 11
Respuesta: Validar numero

Hola Sebastian1046

Código:
var numero = document.getElementById("numero").value; //ID numero puede ser un input text.

//numero ahora es string

if( numero.match(/^-?[0-9]+(\.[0-9]{1,2})?$/) )
{
 alert("numero ok");
}
else
{
 alert("numero mal");
}
Esto verifica que el formato del numero sea el que tu quieres.
Te sirve?
  #3 (permalink)  
Antiguo 20/07/2008, 16:27
Avatar de Sebastian1046  
Fecha de Ingreso: junio-2003
Mensajes: 278
Antigüedad: 20 años, 10 meses
Puntos: 0
Respuesta: Validar numero

Si, gracias!
__________________
Agradesco infinitamente a toda la gente del foro que me ayudo/a.
  #4 (permalink)  
Antiguo 20/07/2008, 19:49
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Respuesta: Validar numero

Hola:

La respuesta de xbx es muy buena, pero me gustaría otorgar otra sin dar uso a expresiones regulares. A veces las podemos evitar si no las conocemos:

Código PHP:
function esNumero(n) {
    
n.toString().replace(","".");        // permitimos la coma, pero la sustituimos con punto
    
Number(n);
    var 
tieneDosDecimales n*100===n.toFixed(2)*100;
    var 
esMenorOcero n<=0;
    return (
Boolean(n) || esMenorOcero) && tieneDosDecimales;
}
alertesNumero("5.12") ); 
Lo único que no he conseguido hacer (sin engordar mucho el código) es si se añaden ceros a la derecha de los decimales (500.0000). La cantidad numérica no varía, así que supongo que se puede asumir.



Saludos
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 02:42.