doulo4ever Postado Setembro 1, 2007 Denunciar Share Postado Setembro 1, 2007 Olá pessoal, existe alguma função no javascript que faça a mesma coisa que o number_format do PHP??Andei procurando na net já mas só acho umas funções bem cabeludas para formatar moeda!Existe alguma forma simples e eficiente no javascript para fomratar moeda tipo:R$ 1323.46ParaR$ 1.323,46Obrigaduuuu. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fercosmig Postado Setembro 1, 2007 Denunciar Share Postado Setembro 1, 2007 o js não tem uma função que converta um número para moeda, tem que usar aquelas funções gigantescas mesmo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 doulo4ever Postado Setembro 1, 2007 Autor Denunciar Share Postado Setembro 1, 2007 Hum, beleza, você tem alguma aí pra me passar que seja o mais simplificado possível!?Valeu!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fercosmig Postado Setembro 1, 2007 Denunciar Share Postado Setembro 1, 2007 Não tenho uma que eu use aqui, já testada, mas tem estas várias aehttp://www.guiadohardware.net/comunidade/j...ormatar/198303/http://www.freecode.com.br/forum/lofiversi....php/t4255.htmlhttp://www.javafree.org/javabb/viewtopic.jbb?t=848178[+]http://www.google.com/search?q=javascript+formatar+moeda&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 doulo4ever Postado Setembro 3, 2007 Autor Denunciar Share Postado Setembro 3, 2007 (editado) Me dá uma força pra implementar essa formatação nesse código ajax meu?Deixei as linhas comentadas pra ficar mais fácil de saber onde to com problema.var frete = ajax1.responseText; // Este valor retorna no formato 43,60 ... acima de 1.000 ele retorna no formato 1.100,00 frete = frete.replace(",", "."); // Estou trocando a vírgula por ponto, mas só vai funcionar para valores menores que 1.000 ... aqui preciso fazer uma formatação que se o valor vier maior que 1.000 ele deixe no formato 1200.50 var total_carrinho = document.getElementById("total_carrinho").value; // Este valor vem no formato 100.00 ou 1200.50 quando maior que 1.000 ... não preciso mexer nada aqui var soma = parseFloat(frete) + parseFloat(total_carrinho); document.getElementById("total").innerHTML = "R$ "+soma; // Agora aqui que é o maior problema, antes de enviar este valor para a página eu preciso fazer essa formatação de moeda para aparecer 1.200,50 ao invéz de 1200.50....Me dá uma ajuda porque não to manjando adaptar aqueles códigos dessa forma que preciso.Valeu mesmuuu! Editado Setembro 3, 2007 por andreia_sp utilize tags para codigos, facilita a visualização. Andreia_Sp Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 doulo4ever Postado Setembro 4, 2007 Autor Denunciar Share Postado Setembro 4, 2007 Preciso da ajuda de vocês porque javascript não é meu forte.Valeuuu! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Leandro Rodrigues Postado Julho 31, 2008 Denunciar Share Postado Julho 31, 2008 (editado) Ola, vamo lá...Tente isso...<!-- Por Leandro Rodrigues | leandro_proc@yahoo.com.br --><html><head><script type="text/javascript"> function formatar_moeda(campo, separador_milhar, separador_decimal, tecla) // Função valida quando for digitado um número valido { var sep = 0; var key = ''; var i = j = 0; var len = len2 = 0; var strCheck = '0123456789'; var aux = aux2 = ''; var whichCode = (window.Event) ? tecla.which : tecla.keyCode; if (whichCode == 13) return true; // Tecla Enter if (whichCode == 8) return true; // Tecla Delete if (whichCode == 0) return true; // Tecla Delete key = String.fromCharCode(whichCode); // Pegando o valor digitado if (strCheck.indexOf(key) == -1) return false; // Valor inválido (não inteiro) len = campo.value.length; for(i = 0; i < len; i++) if ((campo.value.charAt(i) != '0') && (campo.value.charAt(i) != separador_decimal)) break; aux = ''; for(; i < len; i++) if (strCheck.indexOf(campo.value.charAt(i))!=-1) aux += campo.value.charAt(i); aux += key; len = aux.length; if (len == 0) campo.value = ''; if (len == 1) campo.value = '0'+ separador_decimal + '0' + aux; if (len == 2) campo.value = '0'+ separador_decimal + aux; if (len > 2) { aux2 = ''; for (j = 0, i = len - 3; i >= 0; i--) { if (j == 3) { aux2 += separador_milhar; j = 0; } aux2 += aux.charAt(i); j++; } campo.value = ''; len2 = aux2.length; for (i = len2 - 1; i >= 0; i--) campo.value += aux2.charAt(i); campo.value += separador_decimal + aux.substr(len - 2, len); } return false; } function validaValor(campo) // Função valida quando campo for alterado por qualquer teclas não númerica com "backspace", "Delete", "Tab" etc... { var len = ''; var len2 = ''; var valor = ''; var valor2 = ''; var j = ''; var i = ''; len = campo.value.length; for(i = 0; i < len; i++) { if ((campo.value.charAt(i) != ',') && (campo.value.charAt(i) != '.')) { valor += campo.value.charAt(i); } } len = valor.length; if (len == 0) campo.value = '0,00'; if (len == 1) campo.value = '0'+ ',' + '0' + valor; if (len == 2) campo.value = '0'+ ',' + valor; if (len > 9) { valor = valor.substr(0, 9); len = valor.length; for (j = 0, i = len - 3; i >= 0; i--) { if(j == 3) { valor2 += '.'; j = 0; } valor2 += valor.charAt(i); j++; } campo.value = ''; len2 = valor2.length; for (i = len2 - 1; i >= 0; i--) { campo.value += valor2.charAt(i); } campo.value += ',' + valor.substr(len - 2, len); } else if (len > 2) { for (j = 0, i = len - 3; i >= 0; i--) { if(j == 3) { valor2 += '.'; j = 0; } valor2 += valor.charAt(i); j++; } campo.value = ''; len2 = valor2.length; for (i = len2 - 1; i >= 0; i--) { campo.value += valor2.charAt(i); } campo.value += ',' + valor.substr(len - 2, len); } return false; }</script><body><form> Valor: <input type="text" name="valor" id="valor" length="15" onkeypress="return formatar_moeda(this,',','.',event)" onkeyup="return validaValor(this,event)"></form></body></html>[/codebox] Editado Julho 31, 2008 por fercosmig Adicionar tag's Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
doulo4ever
Olá pessoal, existe alguma função no javascript que faça a mesma coisa que o number_format do PHP??
Andei procurando na net já mas só acho umas funções bem cabeludas para formatar moeda!
Existe alguma forma simples e eficiente no javascript para fomratar moeda tipo:
R$ 1323.46
Para
R$ 1.323,46
Obrigaduuuu.
Link para o comentário
Compartilhar em outros sites
6 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.