Ir para conteúdo / Skip to content

Máscaras em campos de formulários com jQuery

Postado em: 17 de novembro de 2008 por Anderson Custódio

Para criar máscaras com jQuery, iremos usar o plugin Masked Input, com apenas uma linha de código podemos criar qualquer tipo de máscara.

Para começar, caso não tenha o jQuery, faça o download do mesmo, após isso pegue o Masked Input, e apenas inclua-los em sua página.

Agora vamos criar as máscaras que precizamos.

jQuery.noConflict();
(function($) {
$(function() {
$('.mask-data').mask('99/99/9999'); //data
$('.mask-hora').mask('99:99'); //hora
$('.mask-fone').mask('(999) 999-9999'); //telefone
$('.mask-rg').mask('99.999.999-9'); //RG
$('.mask-ag').mask('9999-9'); //Agência
$('.mask-ag').mask('9.999-9'); //Conta
});
})(jQuery);

Repare que estou setando as máscaras para “classes”, no site do autor é usado “ids”, mas isso não é muito legal, caso tenha dois campos de telefone numa mesma página, teriamos que mecher no javascript, pois não pode haver “id” repetidos na mesma página.

Agora pra implemetar as máscaras é só incluir as classes setadas nos inputs dos formulários.

<input type="text" name="fone1" class="mask-fone" />
<input type="text" name="fone2" class="mask-fone" />
<input type="text" name="rg" class="mask-rg" />
<input type="text" name="cpf" class="mask-fpc" />

E pronto, já esta funcionando, repare que caso você erre, é possível alterar sem ter que apagar tudo, geralmente algumas máscaras, como a do Banco do Brasil, não deixa editar pelo meio do campo, temos que apagar e digitar tudo de novo, se não tudo que for digitado vai para o final do campo.

Para facilitar, recomendo colocar o código que gera as máscaras no final do código do plugin, sim no mesmo arquivo, assim você não precisa ficar refazendo, e é só incluir e usar.

Isso pode lhe interessar:

Sobre Anderson Custódio

Anderson Custódio de Oliveira é desenvolvedor web, utiliza como linguagem server side o PHP e mora na cidade de Cafelândia - SP.

Deixe seu comentário

5 comentários para esse post

  1. Gian Carlos disse:
    #1

    Interessante e claro o texto, Anderson! []s

  2. Kivanio disse:
    #2

    Meu sonho é achar uma boa assim para moeda, tem alguma dica?

  3. Alexsandro disse:
    #3

    @Kivanio

    Pois é, pra moeda assim ta dificil, este plugin existe a tempos e nunca foi add esta feature.

  4. Anderson Custódio disse:
    #4

    Hum, eu não tinha pensando nesta máscara, dei uma leve olhada no código e parece que não é possivel fazer este tipo de máscara, mas vou fazer alguma solução para isto, modificar este script, ou fazer um separado, aguardem uns dias que posto uma solução para isto.

    Até mais =D

  5. Rafael disse:
    #5

    Muito boaa as mascaras! Porem, nao consegui fazer funcionar se elas estiver em uma página que será carregada via AJAX. Alguem tem alguma solução ?! Abraços

Deixe seu comentário