[Php-avanzado] GetElementById tipo de dato - Javascript
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Vie Oct 3 03:28:02 ART 2008
Hola Matías,
El jue, 02-10-2008 a las 17:48 -0700, BlackSwan escribió:
> Seguramente hay ejercicios mucho mas importantes que el ultimo que me
> puse a hacer que es el 4.4 (y porque pensé este lo hago rapidisimo, es
> una boludes...), pero aun asi quisiera resolver el problema que me
> urgió.
> Hay que validar que el campo "edad" sea de tipo "numerico". Muy bien.
> Me pareció que la mejor manera era usar algo llamado "typeof(objeto)"
> que devuelve el "tipo" de objeto que es.
Bueno, por la dualidad a ese nivel de objeto/variable, podemos
simplificar la cosa y decir simplemente "tipo de variable"
> Si uno le paso un numero, devuelve "number", si le pasamos una
> palabra, devuelve "string", por ejemplo...
Mmmm...
> La cosa es que (y tarde bastante en encontrar esta boludes) cuando uno
> ingresa un numero en el textbox y envia los datos, GetElementById toma
> al numero como un "string" y no se porque. Existe alguna manera de que
> no suceda esto?
No, no existe: lo que estás viendo es en realidad que siempre estás
leyendo de un input text en HTML... y como estarás sospechando, el tipo
de un input text es un string.
> El script que les paso obviamente no funciona bien al validar la edad,
> porque aunque sea un numero, esta tomado como un "string".
No es por esto que te falla.
En cuanto hagas una comparación o una operación matemática, por el
casting de la variable termina siendo vista como un integer.
> Si alguien me dice alguna manera de solucionarlo, se lo agradecería.
Lo que tenés que plantear a nivel de la validación es recorrer el
string caracter por caracter y si alguno de ellos no es un número,
avisás que está mal ingresado.
También se puede hacer con una expresión regular, que tendrás que
buscar porque yo no las recuerdo.
Salu2!
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado