A função foi escrita utilizando apenas Javascript, ela irá validar CPF, respeitando as regras de validações definidas pelo ministério da fazenda.
Função para validar CPF
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.
Como validar CPF em um campo input text
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.