
Mascara de moeda
Para fazer formulários de fácil compreenção é sempre recomendável colocar a formatação de como o campo vai ser preenchido, para isso eu sempre recomendei o Masked Input Plugin. Porém, este plugin (que vai ser comentádo no próximo post – masked input plugin | mascaras em campo | jquery plugin) não tem formatação do tipo moeda (R$ 1,00).
Sorte nossa que o Aurélio Saraiva fez um plugin para isso e o Raul Pereira da Silva fez algumas correções. Conheçam então o maskInputMoney.
//maskMoney() faz a mascara normal do Dolar
$("#dolar").maskMoney()
//Faz a mascara de moeda do Brasil
//maskMoney({symbol:"R$",decimal:",",thousands:"."})
$("#real").maskMoney({symbol:"R$",decimal:",",thousands:"."})
//Monta no modelo euro
$("#euro").maskMoney({symbol:"Euro",decimal:",",thousands:" "})
//A precisão do decimal (,000) ;
$("#precision").maskMoney({decimal:",",thousands:" ",precision:3})
//Para remover a mascara
$("#dolar").unmaskMoney();
Haha.. usando….
Boa ruanito!
ps: Compra meu WII!
Doa seu WII pra mim!!!
SHOW DE BOLA!!!!
VLW
Obrigado você pelo comentário
Show de bola cara!
Ruan, tem como permitir q o usuario edite o valor sem ter que apagar tudo?
Se você alterar o código do plugin sim.
Ruan, você já trabalhou com JSF e RichFaces? Se a resposta for “SIM”, sabe dizer se é tranquilo usar este plugin do jQuery estes frameworks que citei?
Abaixo segue um exemplo de JSF com o Masked Input Plugin:
http://forum.darkside.com.br/vb/showthread.php?t=26907
Abraço!
Ricardo, sinto muito mas não manjo nada de Rich Faces e JSF
Sem problemas Ruan, consegui fazer o que precisava e logo logo vou postar as dicas no meu blog.
Um abraço!
Estou aprendendo, parece bom, contudo senti falta de colocar o sinal (-) nos valores.
Ruan, novamente eu aqui…
A dúvida agora é a seguinte, preciso salvar o valor R$ 0,00 como um valor válido. Acontece que se eu deixar o valor 0,00 no campo o plugin limpa o campo… Isso pra mim é um GRANDE problema.
Sabe como posso resolver isso?
Valeu!!!!
No seu backend if(valor == “”) {valor = 0,00;} Ou vc pode dar uma mexida no código do plugin.
O meu problema é o seguinte, tem momentos que o usuário pode deixar o campo em branco (então persistirei null na base) e tem momentos em que o usuário pode optar por configurar o valor como R$ 0,00 (então devo persistir 0.0 na base).
Será que é complicado colocar um parâmetro a mais no plugin? Tipo aquele allowZero ou showSymbol…
O que dá para fazer é alterar essa parte do código.
function blurEvent() { if (input.val()==setSymbol(getDefaultMask())) { //input.val(""); } else { input.val(input.val().replace(settings.symbol,"")) } }Como pode ser visto cometar a linha:
input.val("");Funcionou… Valeu pela ajuda!
Um abraço!
Opa, otima função! valeu
Pessoal,
parabéns mesmo! Esse plugin é muito massa!!
Quando que crescer quero ser igual a vocês!
uhawuahwuhuhawuuawuhuawuhaw
abraços
Hehehe. =D
Eu nao tinha lido esse post mas nem precisa responder a pergunta que fiz no post do markedinput pois esse aqui já me repondeu perfeitamente.
Muito obrigado!
Fábio
Fiz algumas alterações interessantes para alguns.
Corrigido simbologia para o Brasil;
Bloqueado a sobreposição da máscara e duplicação de números em caso de carregamento dinâmico;
Retorna o valor 0,00 em caso de não digitar nada.
Abraços.
Cara, obrigadão.
Vai ser de grande ajuda a todos.
Cara, como faço pra inserir essa máscara na página?
Basta adicionar o plugin na sua página e colocar o código postado aqui. Não esquece que precisa do jQuery para isso funcionar.
Ruan, parabéns pelo plugin, muito bom mesmo.
Abraço!
thanks dude!
very useful!