Guest Jair Postado Maio 18, 2003 Denunciar Share Postado Maio 18, 2003 alguém tem algum script que formate valor durante a digitacao, com separacao de milhares e decimais? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Maio 18, 2003 Denunciar Share Postado Maio 18, 2003 para quem tentou... muito Obrigado... aos que necessitam de uma função assim ai vai.. :Funciona que é uma maravilha :)<!--Utilizacao : onKeydown="Formata(this,12,event)"*** a Fazer ***"mudar a decimal para uma variavel" assim pode-se formatar para Peso e calculos com mais digitos"posicionar valor a direita" estetica.. )--></a><p> </p><p align="center">Valor : <html><head><meta name="GENERATOR" content="Microsoft FrontPage 5.0"><meta name="ProgId" content="FrontPage.Editor.Document"><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>Formatação de Valores monetarios</title></head><body><script>function Limpar(valor, validos) {// retira caracteres invalidos da stringvar result = "";var aux;for (var i=0; i < valor.length; i++) {aux = validos.indexOf(valor.substring(i, i+1));if (aux>=0) {result += aux;}}return result;}//Formata número tipo moeda usando o evento onKeyDownfunction Formata(campo,tammax,teclapres) {var tecla = teclapres.keyCode;vr = Limpar(campo.value,"0123456789");tam = vr.length;if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }if (tecla == 8 ) { tam = tam - 1 ; }if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){dec=2if ( tam <= dec ){ campo.value = vr ; }if ( (tam > dec) && (tam <= 5) ){campo.value = vr.substr( 0, tam - 2 ) + "," + vr.substr( tam - dec, tam ) ; }if ( (tam >= 6) && (tam <= 8) ){campo.value = vr.substr( 0, tam - 5 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }if ( (tam >= 9) && (tam <= 11) ){campo.value = vr.substr( 0, tam - 8 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }if ( (tam >= 12) && (tam <= 14) ){campo.value = vr.substr( 0, tam - 11 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }if ( (tam >= 15) && (tam <= 17) ){campo.value = vr.substr( 0, tam - 14 ) + "." + vr.substr( tam - 14, 3 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - 2, tam ) ;}} } </script> <input type="text" name="T1" size="20" onKeydown="Formata(this,20,event)"></p></p></body></html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 negociadorweb Postado Maio 19, 2003 Denunciar Share Postado Maio 19, 2003 Parabéns.......você brilhou.......num q a função funciona mesmo....... :ph34r: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Aprendendo Postado Maio 21, 2003 Denunciar Share Postado Maio 21, 2003 Cara funciona mesmo... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Jair
alguém tem algum script que formate valor durante a digitacao, com separacao de milhares e decimais?
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.