jQuery maskMoney plugin

29 Oct
2009

Money, Money, Money by borman818

Hey pessoal, quick post: acabei de jogar no github mais um projeto que uso a tempo e contribui com algum código: o jquery-maskMoney plugin. É basicamente um plugin pra fazer o trabalho chato de ficar controlando formatação de campos numéricos(com ou sem precisão decimal).

Pra usar ele é mega simples, mas mostrar é mais fácil que falar, então dê uma espiada na página de exemplos. Dúvidas, sugestões, críticas, etc, basta entrar em contato, abrir uma issue no projeto ou deixar um comentário!

by-nc-nd

32 Responses to jQuery maskMoney plugin

Avatar

Rodrigo C. A.

October 30th, 2009 at 12:43 pm

Já viu esse projeto?
http://www.meiocodigo.com/projects/meiomask/

Acho muito bom. Uso sempre.

Avatar

Diego Plentz

October 30th, 2009 at 1:08 pm

Hey Rodrigo,

Não conhecia, parece bom. Mas ele ainda não trata máscaras de números da forma que gosto. Pra elas ainda prefiro o maskMoney mesmo :)

Avatar

Paulo Fernandes

January 13th, 2010 at 1:38 pm

Opa

Fiz uma modificação no plugin, queria saber sua opinião, não sou expert em javascript, como faço para te mandar o código

abraço

Avatar

Eduardo

March 4th, 2010 at 8:13 pm

hey, vc tem planos de colocar ela para funcionar com valores negativos?

Avatar

Diego Plentz

May 12th, 2010 at 10:29 am

Bom dia Eduardo,

Desculpe a demora pra responder, mas por enquanto não tenho planos quanto à isso não. Mas se quizer fazer um patch e mandar no github, será mto bem vindo :)

Abraço

Avatar

ricardo

June 7th, 2010 at 10:04 am

Esta dando erro no Chrome

Avatar

Lu

June 29th, 2010 at 2:29 pm

Conte 6 coisas sobre você que os outros não sabem. Após, indique para seis pessoas o desafio.

Avatar

Filipe Bojikian Rissi

July 21st, 2010 at 8:51 am

Fiz uma mudança no jQuery maskMoney plugin para aceitar números negativos atravéz de um atributo boolean ele aceita o número negativo ou não. Gostaria de saber onde e como posso postar esta mudança para contribuir.

Avatar

Filipe

April 8th, 2011 at 2:51 pm

Olá,

Por favor como faço para usar isso na minha aplicação? Tem algum exemplo de como usar isso no componente…qual o nome da função tenho que chamar e em qual action se tenho que passar algum parametro…

Obrigado,

Avatar

Auton

May 14th, 2011 at 11:55 am

A função está quebrada. Não consigo identificar o lugar do erro, mas não funciona.

Avatar

Diego Plentz

May 15th, 2011 at 10:18 pm

Auton, chegou a ver a página de exemplos? http://plentz.github.com/jquery-maskmoney/

Caso realmente esteja com problemas em alguma coisa, só abrir uma issue no github

Avatar

Diego Plentz

May 15th, 2011 at 10:20 pm

Filipe Aguilar, você pode conferir na página de exemplos algumas formas de utilização do plugin.

Avatar

Diego Plentz

May 15th, 2011 at 10:21 pm

Ricardo, qual erro está dando?

Avatar

Cláudia

July 13th, 2011 at 10:24 pm

Estou usando a versão 1.3 do MaskMoney e ela desabilita o evento onchange. Já há correção para este bug? Sou iniciante em javascript e não consigo corrigi-lo sozinha.

Avatar

Dennys

July 23rd, 2011 at 10:33 pm

Amigo!
Eu fiz umas pequenas mudanças no código, mas não sei como utilizar o GitHub :(
Então vou colocar aqui:
1º) Adicionei o atributo alignRight, cuja finalidade é definir o text-align = right
settings = $.extend({
symbol: ‘US$’,
… alignRight: true
}, settings);


input.bind(‘keypress.maskMoney’,keypressEvent);

input.css(“text-align”, settings.alignRight ? ‘right’ : ‘left’);
2º) Na função function focusEvent(e) eu adicionei a validação para allowZero = true, pois ao entrar em foco e o input já tenha o value = 0.00 ele estava apagando…
function focusEvent(e) {
var mask = getDefaultMask();
if (input.val()==mask&&!settings.allowZero) {
input.val(”);



}

Espero ter contribuído de forma construtiva, pois até o momento é o melhor plugin para formatação monetária.
Obrigado!

Avatar

Mateus

August 9th, 2011 at 11:03 am

vlw plentz resolveu nossos problemas aqui na empresa.
nós estavamos usando uma versão 0.2 do maskMoney tinha vários problemas que agente estava pesquisando para resolver.
e nesta versão 1.3 resolveu todos.

estamos usando ele para jsf 1.2 com richfaces 3. funcionou bem no IE8, firefox 5 e chrome.
vlw

Avatar

Diego Plentz

September 13th, 2011 at 1:01 am

Dennys,

Obrigado pelas alterações, mas a allowZero nós já temos disponível na última versão(https://github.com/plentz/jquery-maskmoney) e a função de alinhamento do texto, acredito que colocar ela no css da aplicação seja mais correto. Mas agradeço a contruibuição mesmo assim!

Mateus

Obrigado pelo feedback. Em breve devo anunciar boas novas pro plugin no meu twitter(@plentz). Abraço!

Avatar

Anderson

October 17th, 2011 at 8:24 am

Olá Diego Plentz

Consegui implementar a maskMoney (Version: 1.3 – Release: 2011-04-20), porém estou com um problema:

Ao fazer um cálculo no javascript, ele atualiza um input. Para este input a máscara não aplica a configuração de allowNegative:false e o decimal sempre fica “.” mesmo que esteja configurado para “,”.

Você sabe me dizer se é algum problema na configuração ou se está faltando algum tratamento para evento onchange na maskMoney?

Desde já deixo meus agradecimentos pela atenção e pelo seu ótimo trabalho.

Avatar

Rafael Albani

November 18th, 2011 at 12:44 pm

Diego, primeiramente parabéns pelo seu trabalho, gostaria de tirar uma dúvida contigo, estou usando um outro plugin Jquery chamado maskInput, juntamente com o maskMoney. Descobri testando os dois plugins que os dois disponibilizam um método com o mesmo nome o mask(), e isso está gerando um problema para mim, pois quando utilizo o método mask() visando o maskInput, parece que ele chama o método maskMoney.

Agradeço desde já a ajuda.

Avatar

João Batista Júnior

December 6th, 2011 at 12:28 pm

Rafael Albani,
Aconteceu a mesma coisa comigo. O que fiz foi renomear a função e as chamadas de mask para maskAppend.
Só assim consegui usar o maskedinput e o maskmoney juntos.

As alteraçõe foram:

Na linha 238 :
function maskAppend() {

Na linha 272:
input.bind(‘maskAppend’, maskAppend);

Nas linhas 290 e 291:
$.fn.maskAppend = function () {
return this.trigger(‘maskAppend’);

E Diego, parabéns pela função, gostei muito.

Avatar

Igor Gabriel

March 7th, 2012 at 2:22 pm

Fala Diego Plentz,

gostei bastante desse post, me ajudou muito.
Porém em teste acabei descobrindo algo que não esperava, o maskmoney aceita “%”.
Tentei contornar mas não consegui, você saberia contornar?

Avatar

Diego Plentz

March 10th, 2012 at 9:58 am

Igor, na verdade não deveria aceitar. Vou verificar isso. Abri essa issue pra tratar o problema:https://github.com/plentz/jquery-maskmoney/issues/37

Avatar

Mariano

June 15th, 2012 at 11:51 pm

As modificações nas linhas informadas são em qual arquivo? No Maskmoney ou no Maskedinput?
Estou tentando utilizar ambas ao mesmo tempo, mas não estou conseguindo.

Avatar

Mariano

June 15th, 2012 at 11:51 pm

João Batista Júnior
As modificações nas linhas informadas são em qual arquivo? No Maskmoney ou no Maskedinput?
Estou tentando utilizar ambas ao mesmo tempo, mas não estou conseguindo.

Avatar

Rafael Wendel Pinheiro

June 29th, 2012 at 3:10 pm

Parabéns pelo blog e pelo post.

Estava com problemas de conflito entre o maskMoney e o Maskedinput. Foi só mudar o nome da função no maskmoney como abordado nos comments e resolveu meu problema.

Valeu demais

abs

Avatar

Rafael

July 3rd, 2012 at 10:26 am

Muito bom! Funcionou perfeitamente, parabéns!!

Avatar

Wilson

October 9th, 2012 at 3:17 pm

Amigo! preciso criar uma mascara de moeda um textbox do visual studio webdeveloper, mas não sei como inciar com jquery. Tem alguma recomendação?

Avatar

Junior Pacheco

October 28th, 2012 at 1:43 am

Tem como adicionar a mascara em tempo de execução?

Avatar

Leandro

September 22nd, 2013 at 10:55 am

Muito bom o plugin, só deixo a dica de mais uma opção no Options:

max_length: tamanho máximo do valor, por exemplo:

$(“#demo2″).maskMoney({thousands:”, decimal:’.’, max_length:5});

999.99 (seria o tamanho máximo)

Avatar

Paulo Estêvão

April 10th, 2014 at 5:42 pm

Diego,

Boa tarde!

Estou tentando usar o plugin com um BD MySql. Alguma coisa estou fazendo errado pois o que é enviado via POST é o valor ainda com a máscara (p.ex. R$ 4.888,95. Isto, obviamente, dá erro. Pode me dizer o que fazer para enviar o valor sem a mascara para o banco de dados?
Desde já, agradeço.

Avatar

Luis

July 3rd, 2014 at 11:54 am

Olá Diego escrevendo a partir de Venezuela, recentemente, eu encontrei essa máscara que parecia excelente para mim para um projeto pessoal que eu estou fazendo, mas eu ter saltado um pequeno inconveniente, tenho duas caixas de texto onde a renda cada valor por exemplo, 100 e 100 máscara 100,00 converte-lo para mim, porque ele vai colocar formato como separador decimal (,), me mostra detalhes porque em uma terceira caixa deve de Apparate 200,00 é exibido como 0.20 como eu poderia resolver esse detalhe?

Saudações

Avatar

Tarcisio Castro

July 6th, 2014 at 2:54 pm

Olá, Diego, boa tarde.

Sempre utilizo seu plugin. Pra mim, é o melhor de todos.

Esses dias passei por um problema, não consigo fazer funcionar em celulares. A máscara só aplica após clicar em outro lugar e clicar no input novamente.

Existe alguma solução?

Obrigado!

Comment Form

top