Ir para conteúdo
Bruno Roberto Morillo

Mascara para CPF e CNPJ no mesmo campo

Recommended Posts

Olá, tudo bem? sou novo na comunidade mas preciso de ajuda, eu gostaria de fazer um cadastro único onde o campo de texto formatado do CPF sirva para CNPJ, por exemplo:

Se (campo_de_texto.Lenght > CPF.lenght)

{

    Mascara == CNPJ;

}else

{

    Mascara == CPF;

}

 

Essa é a lógica, só não sei como aplicar... alguém poderia me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite,

 

Penso que neste caso pode utilizar o JFormattedTextField, e criar as duas máscaras e deixar pronto para uso:

MaskFormatter CNPJMask = new MaskFormatter("##.###.###/####-##");
MaskFormatter CPFMask = new MaskFormatter("###.###.###-##");

Com dois radio button você consegue verificar qual mask aplicar, por exemplo se selecionado radio button CPF:

jFormattedTextField1.setValue(null); 
jFormattedTextField1.setFormatterFactory(new DefaultFormatterFactory(CPFMask));

No caso de CNPJ utilize:

jFormattedTextField1.setValue(null);
jFormattedTextField1.setFormatterFactory(new DefaultFormatterFactory(CNPJMask));

Espero ter ajudado.

 

Att.

Thiago

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 04/05/2018 at 18:54, thmrdev disse:

Boa noite,

 

Penso que neste caso pode utilizar o JFormattedTextField, e criar as duas máscaras e deixar pronto para uso:


MaskFormatter CNPJMask = new MaskFormatter("##.###.###/####-##");
MaskFormatter CPFMask = new MaskFormatter("###.###.###-##");

Com dois radio button você consegue verificar qual mask aplicar, por exemplo se selecionado radio button CPF:


jFormattedTextField1.setValue(null); 
jFormattedTextField1.setFormatterFactory(new DefaultFormatterFactory(CPFMask));

No caso de CNPJ utilize:


jFormattedTextField1.setValue(null);
jFormattedTextField1.setFormatterFactory(new DefaultFormatterFactory(CNPJMask));

Espero ter ajudado.

 

Att.

Thiago

Coloquei dessa forma no meu aqui e fico muito bom valeu 

Exp: RbCpf e o RadioBotton

private void RbCpfMouseClicked(java.awt.event.MouseEvent evt) {                                   

        if (RbCpf.isSelected()) {
            try {
                this.txtCliCpfCnpj.setText("");
                MaskFormatter CPFMasck = new MaskFormatter("###.###.###-##");
                this.txtCliCpfCnpj.setValue(null);
                this.txtCliCpfCnpj.setFormatterFactory(new DefaultFormatterFactory(CPFMasck));
                this.txtCliCpfCnpj.requestFocusInWindow();
            } catch (ParseException ex) {
                Logger.getLogger(ViewCliente.class.getName()).log(Level.SEVERE, null, ex);
            }

        } else {

        }
    }                                  

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por marcelobbt
      Encontrei um código para formatar o valor da forma que eu quero, o problema que ele aciona o script para todos os inputs (ver abaixo)
      $(function(){ $('input').bind('keypress',mask.money) }); Porém queria aplicar apenas a um dos inputs do meu form.
       
      Abaixo segue o script completo
      var mask = { money: function() { var el = this ,exec = function(v) { v = v.replace(/\D/g,""); v = new String(Number(v)); var len = v.length; if (1== len) v = v.replace(/(\d)/,"0.0$1"); else if (2 == len) v = v.replace(/(\d)/,"0.$1"); else if (len > 2) { v = v.replace(/(\d{2})$/,'.$1'); } return v; }; setTimeout(function(){ el.value = exec(el.value); },1); } } $(function(){ $('input').bind('keypress',mask.money) }); o input seria o abaixo:
      <input type="text" id="valorform" name="valorform">  
    • Por klonder
      Tentei incluir a máscara a seguir em um POST meu antigo, porém está fechado para novas respostas:
       
      Todavia, para futuras consultas minhas e também para ajudar outras pessoas, venho deixar uma máscara interessante que acabei de terminar em JavaScript.
      Ficou muito menor que a do POST acima:
      <script type="text/javascript"> var iCount1; var trava = false; function MaskDown(e) { if (trava == false) { iCount1 = e.value.length; trava = true; } } function MaskUp(e,mascara) { if (trava) { var textoLimpo = e.value.substr(0,iCount1+1).replace(/[\/\:\-\.]/g,""); var texto = ""; var iM = 0; var iT = 0; while (iM < mascara.length) { if (iT < textoLimpo.length) { if (mascara.substr(iM,1) == "#") { texto += textoLimpo.substr(iT,1); iT++; } else { texto += mascara.substr(iM,1); } } iM++; } e.value = texto; trava = false; } } </script> Para funcionar, basta incluir em suas tags input os eventos, como demonstrado a seguir:
      <input type="text" id="tfData" onkeydown="MaskDown(this)" onkeyup="MaskUp(this,'##/##/####')" placeholder="dd/mm/aaaa" style="width:80px" /> <br /><input type="text" id="tfHora" onkeydown="MaskDown(this)" onkeyup="MaskUp(this,'##:##')" placeholder="hh:mm" style="width:50px"/> À medida que o usuário vai digitando, o valor campo vai sendo formatado. Pode ser usado para CPF, CEP, RG, dentre outros...
       
      Divirtam-se!
    • Por Bruno Roberto Morillo
      Olá, tudo bem? sou novo na comunidade mas preciso de ajuda, eu gostaria de fazer um cadastro único onde o campo de texto formatado do CPF sirva para CNPJ, por exemplo:
      Se (campo_de_texto.Lenght > CPF.lenght)
      {
          Mascara == CNPJ;
      }else
      {
          Mascara == CPF;
      }
       
      Essa é a lógica, só não sei como aplicar... alguém poderia me ajudar?
    • Por Bruno Roberto Morillo
      Olá, tudo bem? sou novo na comunidade mas preciso de ajuda, eu gostaria de fazer um cadastro único onde o campo de texto formatado do CPF sirva para CNPJ, por exemplo:
      Se (campo_de_texto.Lenght > CPF.lenght)
      {
          Mascara == CNPJ;
      }else
      {
          Mascara == CPF;
      }
       
      Essa é a lógica, só não sei como aplicar... alguém poderia me ajudar?
×

Informação importante

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