function validaCNPJ(val) {  
  
var cnpj = document.getElementById(val).value;  
   
var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais;  
  
digitos_iguais = 1;  
   
for (var i=0; i < cnpj.length - 1; i++)  
 
if (cnpj.charAt(i) != cnpj.charAt(i + 1)) {  
   
digitos_iguais = 0;  
break;  
}  
   
if (!digitos_iguais) {  
   
tamanho = cnpj.length - 2  
numeros = cnpj.substring(0,tamanho);  
digitos = cnpj.substring(tamanho);  
soma = 0;  
pos = tamanho - 7;  
  
for (var i=tamanho; i >= 1; i--) {  
  
soma += numeros.charAt(tamanho - i) * pos--;  
if (pos < 2) {  
   
 pos = 9;  
 }  
 }  
   
 resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;  
   
 if (resultado != digitos.charAt(0)) {  
   
   document.yes.style.display="none"; document.getElementById("no").style.display="block";
 return false;  
 }  
   
tamanho = tamanho + 1;  
 numeros = cnpj.substring(0,tamanho);  
 soma = 0;  
 pos = tamanho - 7;  
   
 for (i = tamanho; i >= 1; i--) {  
   
 soma += numeros.charAt(tamanho - i) * pos--;  
 if (pos < 2) {  
   
 pos = 9;  
 }  
 }  
  
 resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;  
   
 if (resultado != digitos.charAt(1)) {  
   document.yes.style.display="none"; document.getElementById("no").style.display="block";
 return false;  
 }  
   document.yes.style.display="block"; document.getElementById("no").style.display="none";
 return true;  
 }  
   
 else  
 document.yes.style.display="none"; document.getElementById("no").style.display="block";
 return false;  
  
 }  