
Como adicionar uma máscara de telefone com até 9 dígitos em um campo utilizando apenas Javascript.
Você pode utilizar Plugins em jQuery para fazer isso, porém será que é necessário você incluir todo o jQuery + o Plugin para fazer um simples máscara de telefone?
Eu acho que não, por isso vamos utilizar apenas Javascript, nada de frameworks! Vamos ao código!
function mascaraTelefone( campo ) {
function trata( valor, isOnBlur ) {
valor = valor.replace(/\D/g,"");
valor = valor.replace(/^(\d{2})(\d)/g,"($1)$2");
if( isOnBlur ) {
valor = valor.replace(/(\d)(\d{4})$/,"$1-$2");
} else {
valor = valor.replace(/(\d)(\d{3})$/,"$1-$2");
}
return valor;
}
campo.onkeypress = function (evt) {
var code = (window.event)? window.event.keyCode : evt.which;
var valor = this.value
if(code > 57 || (code < 48 && code != 8 )) {
return false;
} else {
this.value = trata(valor, false);
}
}
campo.onblur = function() {
var valor = this.value;
if( valor.length < 13 ) {
this.value = ""
}else {
this.value = trata( this.value, true );
}
}
campo.maxLength = 14;
} Para aplicar a mascara em um campo devemos utilizar:
mascaraTelefone( document.getElementById('id_do_campo') ); Só altere o parâmetro id_do_campo de acordo com o ID do seu campo.
Pedido que não fatura e e-mail que não sai porque todo job fica missed: como ler a cron_schedule, conferir o…
Uma função curta em PHP 8.3 que transforma Camiseta Preta Tamanho GG em camiseta-preta-tamanho-gg, sem depender do locale do servidor.
O banner registra o clique só no navegador e some. Veja a tabela MySQL e o endpoint que gravam a…
A classe do comando existe e o bin/magento list ignora ela. Falta o registro no di.xml: aqui vai a classe…
Como traduzir duas mil linhas do pt_BR.csv do Magento 2 lendo com fgetcsv e regravando com fputcsv, sem encostar na…
Produto variável respondendo "Desculpe, este produto não está disponível" mesmo com a variação ativa: limpe os transients do WooCommerce e…
Ver comentários
Obrigado!
Olá amigo boa noite... estou testando esse script em um projeto e ta dando um bug... quando termino de preencher o campo com o numero, se caso eu tente adicionar mais um numero (mesmo alcançando o limite), o script faz o hífen mudar de lugar e o numero muda o formato de "(99)99999-9999" para "(99)999999-999".
Fora isso o script funciona perfeitamente... muito obrigado pelo post...