[code]function modulo11(num){
var base = 2;
var fator = 9;
var digito;
var resto;
var numeros = new Array();
var parcial = new Array();
var soma = 0;
var tam =0;
var siz =0;
var dv1=0;
if(num == ""){
limpaCampos("formBaixa");
return false
};
if(num.length < 13){
alert("Nosso Numero invalido!");
limpaCampos("formBaixa");
return false;
}
siz = num.substr(0,6);
//valida se o dominio/protoco eh valido
if(siz != '829526'){
alert("Nosso Numero invalido!");
limpaCampos("formBaixa");
return false;
}
//recebe apenas os 11 primeiros digitos para cálculo
tam = num.substr(0,11);
/*separação dos números*/
for(i=tam.length;i>0;i--){
numeros[i]=tam.substr(i-1,1); //pega cada número isoladamente
parcial[i]=numeros[i]*fator; //Efetua a multiplicação do número pelo fator
soma += parcial[i]; //soma dos digitos
if(fator==base)fator=10; //restaura o fator de multiplicação para 2
fator --;
}
/*Calculo do módulo11*/
resto = soma % 11;
if (resto < 10){
dv = resto;
}else if(resto == 10){
dv = 'x';
}
//verifica se o digito verificador eh o mesmo calculado pelo módulo11
dv1 = num.substr(12,12);
if(dv != dv1){
alert("Nosso Numero invalido!");
limpaCampos("formBaixa");
return false;
}
return true;
}
function limpaCampos(frm){
document.forms[frm].reset();
}
//passando valor campo html
[/code]