Excellent clean Javascript String prototype for CNPJ validation from JSfromHell.com:
String.prototype.isCNPJ = function() {
var b = [6,5,4,3,2,9,8,7,6,5,4,3,2], c = this;
if((c = c.replace(/[^\d]/g,"").split("")).length != 14) return false;
for(var i = 0, n = 0; i < 12; n += c[i] * b[++i]);
if(c[12] != (((n %= 11) < 2) ? 0 : 11 - n)) return false;
for(var i = 0, n = 0; i <= 12; n += c[i] * b[i++]);
if(c[13] != (((n %= 11) < 2) ? 0 : 11 - n)) return false;
return true;
};
Receita Federal
- Emissão do Comprovante de Inscrição e de Situação Cadastral de Pessoa Jurídica
http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp
References
- Wikipedia: CNPJ
- JSfromHell isCNPJ() javascript string class
- Receita Federal: Cadastro Nacional da Pessoa Jurídica