Foros del Web » Programando para Internet » Javascript »

Formato decimales

Estas en el tema de Formato decimales en el foro de Javascript en Foros del Web. hola amigos! Tengo un pequeño malentendido con un script que encontré en este foro! Necesito que al ingresar un numero automáticamente tome formato decimal separado ...
  #1 (permalink)  
Antiguo 25/01/2010, 10:07
Avatar de bacdavi  
Fecha de Ingreso: junio-2006
Ubicación: http://localhost/
Mensajes: 351
Antigüedad: 18 años, 6 meses
Puntos: 7
Formato decimales

hola amigos!

Tengo un pequeño malentendido con un script que encontré en este foro!

Necesito que al ingresar un numero automáticamente tome formato decimal separado por puntos (.).

El script es el siguiente:

Código:
function currencyFormat(fld, milSep, decSep, e) {
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var whichCode = (window.Event) ? e.which : e.keyCode;
	if (whichCode == 13 || whichCode == 8 || whichCode == 9) return true; // Enter
		key = String.fromCharCode(whichCode); // Get key value from key code
	if (strCheck.indexOf(key) == -1) return false; // Not a valid key
		len = fld.value.length;
	for(i = 0; i < len; i++)
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
	aux = '';
	for(; i < len; i++)
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
	aux += key;
	len = aux.length;
	if (len == 0) fld.value = '';
	if (len == 1) fld.value = '0'+ decSep + '0' + aux;
	if (len == 2) fld.value = '0'+ decSep + aux;
	if (len > 2) {
		aux2 = '';
		for (j = 0, i = len - 3; i >= 0; i--) {
			if (j == 3) {
				aux2 += milSep;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}
		fld.value = '';
		len2 = aux2.length;
		for (i = len2 - 1; i >= 0; i--)
		fld.value += aux2.charAt(i);
		fld.value += decSep + aux.substr(len - 2, len);
	}
	return false;
}
Código HTML:
<input name="TXTamount" type="text" id="TXTamount" value=""  maxlength="8" onkeypress="return(currencyFormat(this,'','.',event))"> 
El script funciona genial en eso del formato pero necesito que el monto máximo sea 99999.99, y al probar el script me deja meter cualquier cantidad como le hago para limitar que solo se ingrese la cantidad máxima indicada??

Muchas Gracias por la ayuda!

Etiquetas: formato
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 20:59.