Função JavaScript valida CPF
Olá, tudo bem? Aí vai umas funções para validar CPF em javascript….
function Atualiza()
{
if ((”==”OK”) && (document.frmFlag.hidFlag.value==1) && (document.Situacao.CPF!=”)) {
if ((”==’OK’) && (”==’1′) && (document.frmFlag.hidFlag.value==0) && (document.Situacao.CPF!=”) ){
document.frmFlag.hidFlag.value=1;
document.Situacao.submit();
}
var flag = document.frmFlag;
if (flag.hidFlag.value == 1)
{
window.location.reload();
}if (document.Situacao.CPF.value != ”) {
document.anti.Senha.focus();
} else {
document.Situacao.CPF.focus();
}
}
function Submeter()
{
var f = document.Situacao;
if (f.CPF.value==”") {
alert(“Informe o CPF.”);
f.CPF.focus();
return;
}
else
{
if (ContaDigitos(f.CPF.value) > 11 ) {
alert(“CPF inválido.”);
f.CPF.focus();
return;
}
var CPFaux = RetiraCaracteresInvalidos(f.CPF.value,11);
NR_CPF = CPFaux.substr(0,9);
var NR_DV = CPFaux.substr(9,2);
if (isEmpty(NR_CPF)) {
alert(“CPF inválido.”);
f.CPF.focus();
return;
}
else {
if(! validaCPF(NR_CPF, NR_DV,”CPF”) )
{
alert(“CPF inválido.”);
f.CPF.focus();
return;
}
}
}
var flag = document.frmFlag;
flag.hidFlag.value = 1;
if (flag.hidFlag.value==0) {
flag.hidFlag.value = 1;
if (”!=”" ) {
f.action = “pagina.asp?OPCAO=ROBO”+”&cpf=”+f.CPF.value+”&Senha=”+document.anti.Senha.value;
}
}
f.submit();
}
function Reexecute()
{
var f = document.Situacao;
document.frmFlag.hidFlag.value=1;
window.location.href=”pagina.asp?OPCAO=&cpf=”+f.CPF.value+”&Senha=”;
window.location.href=”pagina.asp”;
window.location.reload();
f.action = window.location.reload();
f.action = “pagina.asp?OPCAO=”+”&cpf=”+f.CPF.value+”&Senha=”;
if (f.CPF.value!=”") {
f.action = “pagina.asp”;
} else {
f.action = window.location.reload();
}
f.submit();
}
function SaltaCampo (campo, prox, tammax, teclapres)
{
var tecla = teclapres.keyCode;
vr = campo.value;
tam = vr.length;
if (tecla != 0 && tecla != 10 && tecla != 24)
if (tam == tammax)
prox.focus();
}var ImagemAtual = new Image();
function MudaImagem(MyImg, Imagem)
{
ImagemAtual.src = Imagem;
MyImg.src = ImagemAtual.src;
}var ie=(((navigator.userAgent.indexOf(“MSIE”)>-1)||(navigator.userAgent.indexOf(“Mozilla/5.0″)>-1))&&navigator.userAgent.indexOf(“Opera”)==-1?true:false);
var ns=(navigator.userAgent.indexOf(“Netscape”)>-1&&navigator.userAgent.indexOf(“Opera”)==-1?true:false);
var ImagemAtual = new Image();
//—————
function ajustar_cpf(input, evento)
{
var BACKSPACE= 8;
var DEL= 46;
var FRENTE= 39;
var TRAS= 37;
var tecla= (evento.keyCode ? evento.keyCode: evento.which ? evento.which : evento.charCode)
if (( tecla == BACKSPACE )||(tecla == DEL)||(tecla == FRENTE)||(tecla == TRAS)) {
return true;
}
if ( tecla == 13 ) return false;
if ((tecla<48)||(tecla>57)){
evento.returnValue =false;
return false;
} else {
if((input.value.length==3)||(input.value.length==7)) {
input.value=input.value + “.” ;
} else {
if(input.value.length==11) {
input.value=input.value + “-” ;
}
}
}
return true;
}
//——————————-
function editacpf(strCampo,tam) {
var i;
var j;
var nTamanho;
var szCampo;
j=0;
nTamanho = strCampo.length;
szCampo = “”;
for (i = nTamanho-1;i>=0;i–)
{
if (isDigit(strCampo.charAt(i))) {
szCampo = strCampo.charAt(i) + szCampo;
j++;
if (j > tam) break;
}
}
if (szCampo.length < tam) {
for (i = szCampo.length;i<tam;i++)
tam;i++)
{
szCampo = “0″ + szCampo;
}
}
if (j==0) return “”;
return (szCampo.substr(0,3)+”.”+szCampo.substr(3,3)+”.”+szCampo.substr(6,3)+”-”+szCampo.substr(9,2));
}
//——————————-
function isDigit (c){
return ((c >= “0″) && (c <= “9″))
}
//——————————-
function RetiraCaracteresInvalidos(strCampo,tam) {
nTamanho = strCampo.length;
szCampo = “”;
j=0;
for (i = nTamanho-1;i>=0;i–)
{
if (isDigit(strCampo.charAt(i))) {
szCampo = strCampo.charAt(i) + szCampo;
j++;
if (j > tam) break;
}
}
if (szCampo.length < tam) {
for (i = szCampo.length;i<tam;i++)
</tam;i++)
{
szCampo = “0″ + szCampo;
}
}
return szCampo;
}
//——————————-
function ContaDigitos(strCampo) {
nTamanho = strCampo.length;
szCampo = “”;
j=0;
for (i = nTamanho-1;i>=0;i–)
{
if (isDigit(strCampo.charAt(i))) {
szCampo = strCampo.charAt(i) + szCampo;
j++;
}
}
return j;
}
//——————————-
function validaCPF(rcpf1,rcpf2,c) {
d1 = 0;
for (i=0;i<9;i++)
d1 += rcpf1.charAt(i)*(10-i);
d1 = 11 – (d1 % 11);
if (d1>9) d1 = 0;if (rcpf2.charAt(0) != d1)
return false;
d1 *= 2;
for (i=0;i<9;i++)
d1 += rcpf1.charAt(i)*(11-i);
d1 = 11 – (d1 % 11);
if (d1>9) d1 = 0;
if (rcpf2.charAt(1) != d1)
return false;
return true;
}
//——————————-
function isDigit (c){
return ((c >= “0″) && (c <= “9″))
}
//——————————-
function isInteger (s) {
var i;
if (isEmpty(s))
if (isInteger.arguments.length == 1) return false;
for (i = 0; i < s.length; i++)
{
var c = s.charAt(i);
if (!isDigit(c)) return false;
}
return true;
}
//——————————-
function isEmpty(s){
return ((s == null) || (s.length == 0))
}
Abraços e até a próxima pessoal!

Uma função deveria tratar uma string, e nao um campo do formulario
Pessoal, se for comentar no meu blog, argumentem, leiam , se informem antes…
Ridiculo comentario… aprovei pra dizer….
1) diga qual funcao
2) sugiro ler qualquer livro da Javascript!
Se tem dúvida pergunte, nao afirme algo que nao saiba.