Números

Hola tengo un problema para comparar dos cantidades que están en un input lo que hago es los siguiente:
if(Num.value > Cad.value)
{
alert('El dato no es valido');
Num
Num.focus();
Y lo que hace es comparar solamente el primer dígito por ejemplo si es 3000 en un input y 45 en otro aparece el mensaje del alert. ¿Por qué 4 es mayor que 3 y no quiero que compare un numero sino toda la cantidad podría alguien ayudarme? Y gracias por su atención.
1

1 respuesta

Respuesta
1
Estas comparando cadenas de caracteres, ordenado alfabéticamente "45" es mayor que "3000". Convertilo a numeros con la funcion parseInt() asi
if(parseInt(Num.value) > parseInt(Cad.value))
{
Así te va a andar sin problemas. Si los números son decimales tienes la función parseFloat() que se usa igual que la anterior.
Espero que te sirva.
Saludos
Ignacio Crespo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas

¿No es la pregunta que estabas buscando?
Puedes explorar otras preguntas del tema Javascript o hacer tu propia pregunta: