
A função foi escrita utilizando apenas Javascript, ela irá validar CPF, respeitando as regras de validações definidas pelo ministério da fazenda.
Adicione o código a seguir em seu projeto.
function _cpf(cpf) {
cpf = cpf.replace(/[^\d]+/g, '');
if (cpf == '') return false;
if (cpf.length != 11 ||
cpf == "00000000000" ||
cpf == "11111111111" ||
cpf == "22222222222" ||
cpf == "33333333333" ||
cpf == "44444444444" ||
cpf == "55555555555" ||
cpf == "66666666666" ||
cpf == "77777777777" ||
cpf == "88888888888" ||
cpf == "99999999999")
return false;
add = 0;
for (i = 0; i < 9; i++)
add += parseInt(cpf.charAt(i)) * (10 - i);
rev = 11 - (add % 11);
if (rev == 10 || rev == 11)
rev = 0;
if (rev != parseInt(cpf.charAt(9)))
return false;
add = 0;
for (i = 0; i < 10; i++)
add += parseInt(cpf.charAt(i)) * (11 - i);
rev = 11 - (add % 11);
if (rev == 10 || rev == 11)
rev = 0;
if (rev != parseInt(cpf.charAt(10)))
return false;
return true;
}
Sua utilização é bem simples, basta você passar o CPF como parâmetro e ela irá retornar true ou false conforme o resultado da validação.
A função já irá desconsiderar a máscara antes de validar o CPF, retirando os pontos e traço.
Exemplo pratico de utilização.
Javascript
function validarCPF(el){
if( !_cpf(el.value) ){
alert("CPF inválido!" + el.value);
// apaga o valor
el.value = "";
}
} HTML
<input name="campo_de_teste" type="text" onblur="validarCPF(this)">
O evento “onblur” irá acionar a função “validarCPF” que utilizará da função “_cpf” para validar o valor digitado.
Você também pode customizar o código para utilizar apenas uma função.
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…