Foros del Web » Programando para Internet » Javascript »

Formato en Caja de Texto...

Estas en el tema de Formato en Caja de Texto... en el foro de Javascript en Foros del Web. Hola a todos: Algo rapido, sucede que tengo una caja de texto en la cual recibo un valor de tipo numerico...el problema es que me ...
  #1 (permalink)  
Antiguo 04/04/2008, 11:37
Avatar de ciisteado  
Fecha de Ingreso: enero-2008
Ubicación: Home Office
Mensajes: 111
Antigüedad: 16 años, 10 meses
Puntos: 0
Exclamación Formato en Caja de Texto...

Hola a todos:

Algo rapido, sucede que tengo una caja de texto en la cual recibo un valor de tipo numerico...el problema es que me maneja la cantidad de DECIMALES que obtiene de un cálculo, es decir pone algo como esto:

3495.65002441406 lo que yo quiero es que ponga el separador de MILES y solo me respete 2 DECIMALES, algo como esto: 3,495.65

Ojala puedan ayudarme...

Saludos y gracias...
  #2 (permalink)  
Antiguo 04/04/2008, 13:37
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 8 meses
Puntos: 67
Re: Formato en Caja de Texto...

Bueno, aquí tengo un par de funciones que te pueden servir. Usalas para formatear el número:

function setmon(val) {
var res = Math.round(val * 100) / 100;
var ent = Math.floor(res);
var dcm = Math.floor((res - ent) * 100);
var prt = partir(ent);
var rst = "";
for (var i = prt.length - 1; i >= 0; i --) {
if (i % 2 == 0) rst += String(prt[i]) + "'";
else rst += String(prt[i]) + ","
}
rst = rst.substr(0, rst.length - 1);
rst += "." + dcm;
return rst;
}
function partir(val) {
car = String(val);
var crs = new Array();
var i = 0;
do {
var cle = car.length;
var pi = cle - 3;
var cad = car.substr(pi);
crs[i] = cad;
car = car.substr(0, pi);
if (car.length < 4) crs[i + 1] = car;
i ++;
} while (car.length > 3);

return crs;
}


Debes usar el funcion setmon para formatear tu número. Espero que te sirva.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:23.