Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera,
Preciso colocar mascará em um campo que o usuário pode optar em digitar o CNPJ ou o CPF, preciso colocar mascara enquanto o usuário digita.
Em outros campos uso $("#telefone").mask("(99) 9999-9999?9",{placeholder:" "}); teria alguma coisa parecida?
Obrigado
e por que não usar radio buttons para isso e na função algo como:
if(document.getElementById("cpf_cnpj").value == "cpf"){
$("#cpf_cnpj").mask("999.999.999-99",{placeholder:" "});
}else{
$("#cpf_cnpj").mask("99.999.999/9999-99",{placeholder:" "});
}Em sua maioria, as máscaras múltiplas, se baseiam na quantidade caracteres digitadas para, assim então, definir que tipo de máscara aplicar. Ou seja:
CPF: 11 ou 14 dígitos com a máscara;
CNPJ: 14 ou 18 dígitos com a máscara.
Como CPF é o menor, utilize a máscara de CPF até 14 dígitos. Após isso, mude a máscara para CNPJ, pois não deve mais ser um CPF.
Você pode fazer com que o usuário escolha inserir ou o CPF ou o CNPJ e cada input que aparecer após a seleção recebe uma máscara da mesma forma que está acostumado em inserir.
Deixar os dois no mesmo input, você precisaria verificar pelos primeiros dígitos se é um CPF ou se é um CNPJ e isso dá um certo trabalhinho. Existe um tópico aqui no iMasters falando sobre isso: http://forum.imasters.com.br/topic/170399-cpf-e-cnpj-no-mesmo-input/
Abraços!