Hm, algo es sospechoso aquí.
¿En qué navegador devuelve un cuadro de texto vacío NaN? Nunca he visto que eso suceda, y no puedo reproducirlo.
El valor de un cuadro de texto es, de hecho, una cadena. ¡Un cuadro de texto vacío devuelve una cadena vacía!
Ah, y para comprobar si algo es NaN, se debe utilizar:
if (isNaN(tb.value))
{
...
}
Nota: El -función isNaN()
vuelve true
para cualquier cosa que no se puede analizar como un número, a excepción de las cadenas vacías. Eso significa que es un buen cheque de entrada numérica (mucho más fácil de expresiones regulares):
if (tb.value != "" && !isNaN(tb.value))
{
// It's a number
numValue = parseFloat(tb.value);
}
ser más específico, por favor: ¿cuál es el campo respectivo (una entrada de texto, área de texto, lista de selección o qué)? Ningún valor de 'cuadro de texto' (vacío o no) devuelve NaN por sí mismo, que yo sepa. – KooiInc
El cuadro de texto devuelve NaN o lo analiza primero como flotante/entero (lo que significa que parseFloat/Int) devuelve NaN. –
quiso decir: if (NAN == tb.value) // (dos iguales para la comparación) – Jay