Continuando con la publicación anterior, ahora utilizaremos las funciones que hemos escrito anteriormente para JavaScript. Ver
aquí.
Lo haremos con un pequeño ejemplo. Se trata de dar formato a un número a medida que se va digitando en un cuadro de texto. Esta función se puede usar para el ingreso de códigos o para el RUT en el caso de Chile. Trataré de ser lo mas simple posible. La optimización de la función se las dejo a ustedes.
Si quieres ver como funciona, mira esta página
Desachile.com.
La función quedaría así:
|
function Formato(num) { var largo = num.length; var i, dd, ss, largo2, valor, punto, nvalor
dd=Replace(num,".",""); dd=Replace(dd,",",""); dd=Replace(dd,"-","");
if (Len(dd) <= 1) { if (IsNumeric(dd) == false) { num = ""; return (num); } } else { if (IsNumeric(Left(dd, Len(dd) - 1)) == false) { num = ""; return (num); } } largo2 = Len(dd); i = 3; valor = Left(dd, largo2 - 1); largo = Len(valor); nvalor = "";
if (largo2 >= 4) { while (i <= largo) { if (i < largo) { punto = "."; } else { punto = ""; } nvalor = punto + Right(valor, 3) + nvalor;
if (Len(valor) > 1) { valor = Left(valor, Len(valor) - 3) } i = i + 3 } nvalor = valor + nvalor; nvalor = nvalor + "-" + Right(dd, 1); return (nvalor); } else { if (largo2 > 1) { nvalor = Left(valor, 3) + "-" + Right(dd, 1); } else { nvalor=Replace(num,"-",""); } return (nvalor); } }
|
|
Para mis amigos de Chile, les dejo como tarea el cálculo automático del digito verificador del RUT a medida que se van ingresando valores. En una futura publicación mostraré mi solución.
Saludos a todos. Toby.
en el cuadro de texto la accion es onbluer onchange cual????
ResponderEliminar