Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

NetBoy16

Problema com máscara cpf/cnpj

Recommended Posts

Fala pessoal, blz, to usando um código pra mascarar tanto cpf quanto cnpj, acontece que no cnpj ele ta colocando 3 digitos no final ao invés de 2, tentei limitar com maxlength mas nao resolveu, então como não entendo muito de E.R queria pedir a ajuda de vcs com esse codigo, vlw desde já.

 

function mascaraMutuario(o,f){
    v_obj=o;
    v_fun=f;
    setTimeout('execmascara()',1);
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value);
}

function cpfCnpj(v){

    //Remove tudo o que não é dígito
    v=v.replace(/\D/g,"");

    if (v.length <= 14) { //CPF

        //Coloca um ponto entre o terceiro e o quarto dígitos
        v=v.replace(/(\d{3})(\d)/,"$1.$2");

        //Coloca um ponto entre o terceiro e o quarto dígitos
        //de novo (para o segundo bloco de números)
        v=v.replace(/(\d{3})(\d)/,"$1.$2");

        //Coloca um hífen entre o terceiro e o quarto dígitos
        v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2");

    } else { //CNPJ

        //Coloca ponto entre o segundo e o terceiro dígitos
        v=v.replace(/^(\d{2})(\d)/,"$1.$2");

        //Coloca ponto entre o quinto e o sexto dígitos
        v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3");

        //Coloca uma barra entre o oitavo e o nono dígitos
        v=v.replace(/\.(\d{3})(\d)/,".$1/$2");

        //Coloca um hífen depois do bloco de quatro dígitos
        v=v.replace(/(\d{4})(\d)/,"$1-$2");

    }

    return v;

}

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você conhece jquery? Seria assim:

 

<html>
<head>
<script type="text/javascript" src="http://www.tidbits.com.br/download/jquery-1.2.6.pack.js"></script>
<script type="text/javascript" src="http://www.tidbits.com.br/download/jquery.maskedinput-1.1.4.pack.js"></script>
</head>

<script>
$(document).ready(function() {
$("#cpf").mask("999.999.999 - 99");
$("#cnpj").mask("99.999.999/9999-99");
});
</script>

<input type="text" name="cpf" id="cpf">
<input type="text" name="cnpj" id="cnpj">

 

Já sai com a mascara.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.