function filtracampocnpjcpf(campo)
{
   var s = "";
   var cp = "";
   vr = campo.value;
   tam = vr.length;
   for (i = 0; i < tam ; i++) 
   {  
      if (vr.substring(i,i + 1) == "0" || vr.substring(i,i + 1) == "1" || vr.substring(i,i + 1) == "2"  || vr.substring(i,i + 1) == "3" || vr.substring(i,i + 1) == "4" || vr.substring(i,i + 1) == "5" || vr.substring(i,i + 1) == "6" || vr.substring(i,i + 1) == "7" || vr.substring(i,i + 1) == "8" || vr.substring(i,i + 1) == "9")
      {
         s = s + vr.substring(i,i + 1);
      }
   }
   campo.value = s;
   return cp = campo.value;
}


function verificacnpjcpf(campo)
{
  var tam = 0;
  var vr = 0;
  var valor = 0;
  var digito1 = 0;
  var digito2 = 0;
  
  vr = filtracampocnpjcpf(campo);
  tam = vr.length;

  if (tam == 0)
  {
     return true; 
  }

  if (tam >= 12) 
  {  
     valor = parseInt(vr.substr(11,1)) * 2;
     valor = valor + parseInt(vr.substr(10,1)) * 3;
     valor = valor + parseInt(vr.substr(9,1)) * 4;
     valor = valor + parseInt(vr.substr(8,1)) * 5;
     valor = valor + parseInt(vr.substr(7,1)) * 6;
     valor = valor + parseInt(vr.substr(6,1)) * 7;
     valor = valor + parseInt(vr.substr(5,1)) * 8;
     valor = valor + parseInt(vr.substr(4,1)) * 9;
     valor = valor + parseInt(vr.substr(3,1)) * 2;
     valor = valor + parseInt(vr.substr(2,1)) * 3;
     valor = valor + parseInt(vr.substr(1,1)) * 4;
     valor = valor + parseInt(vr.substr(0,1)) * 5;
     digito1 = parseInt(11 - parseInt(valor - (parseInt(valor / 11) * 11)));
     if ((digito1 == 10) || (digito1 == 11))
        {
           digito1 = 0;
        }

     valor = parseInt(vr.substr(11,1)) * 3;
     valor = valor + parseInt(vr.substr(10,1)) * 4;
     valor = valor + parseInt(vr.substr(9,1)) * 5;
     valor = valor + parseInt(vr.substr(8,1)) * 6;
     valor = valor + parseInt(vr.substr(7,1)) * 7;
     valor = valor + parseInt(vr.substr(6,1)) * 8;
     valor = valor + parseInt(vr.substr(5,1)) * 9;
     valor = valor + parseInt(vr.substr(4,1)) * 2;
     valor = valor + parseInt(vr.substr(3,1)) * 3;
     valor = valor + parseInt(vr.substr(2,1)) * 4;
     valor = valor + parseInt(vr.substr(1,1)) * 5;
     valor = valor + parseInt(vr.substr(0,1)) * 6;
     valor = valor + parseInt(digito1) * 2;
     digito2 = parseInt(11 - parseInt(valor - (parseInt(valor / 11) * 11)));
     if ((digito2 == 10) || (digito2 == 11))
        {
           digito2 = 0;
        }

     if ((vr.substr(12,1) == digito1) && (vr.substr(13, 1) == digito2))
        {
           return true;
        }
     else
        {
           alert("CNPJ Inválido!");
           campo.focus();
           return false;
        }
 }
 else
 {
     valor=0;
     for (i = 1; i <= 9 ; i++) 
        {
           valor = valor + parseInt(vr.substr(i-1,1)) * (11 - i);
        }
     digito1 = parseInt(11 - (valor - (parseInt(valor / 11) * 11)));
     if ((digito1 == 10) || (digito1 == 11))
        {
           digito1 = 0;
        }

     valor=0;
     for (i = 1; i <= 10 ; i++) 
        {
           valor = valor + parseInt(vr.substr(i-1,1)) * (12 - i);
        }
     digito2 = parseInt(11 - (valor - (parseInt(valor / 11) * 11)));
     if ((digito2 == 10) || (digito2 == 11))
        {
           digito2 = 0;
        }
 
     if ((vr.substr(9,1) == digito1) && (vr.substr(10, 1) == digito2))
        {
           return true;
        }
     else
        {
           alert("CPF Inválido!");
           campo.focus();
           return false;
        }
 }
}

