Hola quiero hacer un campo que solo admita numeros decimales, el simbolo para el decimal es el punto.
Utilizo esta funcion que vi en el faq y que luego alguien del foro me ayudo a modificar.
Código PHP:
function validardec(e) {
tecla = (document.all) ? e.keyCode : e.which;
if (tecla==8) return true; //Tecla de retroceso (para poder borrar)
patron = /[d.]/;// Solo acepta números y el punto
te = String.fromCharCode(tecla);
return patron.test(te);
}
Sin embargo el usuario podria teclear varios puntos con esa funcion, por ejemplo podria meter 1.2.2 o 12.., etc.
¿Como se puede modificar para que solo admita un punto?
Se que el simbolo (?) significa "cero o una vez" pero lo he intentado de varias maneras y no me lo coge.
Tambien me gustaria, si se pudiera hacer, que solo admitiera dos cifras antes del punto, para que asi no pudiera escribir cifras mayores de 99. Osea que se pudieran escribir dos cifras como maximo antes y despues del punto.
Por ultimo me gustaria tambien saber como se coge el primer elemento de una cadena. Lo quiero para que si el usuario mete una cifra del tipo (.99), la funcion javascript me la transforme a (0.99).
Gracias.