Hola chicos.,
Tengo una función de validación de Cuenta corriente que me funciona a la smil maravillas.
El tema es que el cliente ahora quiere adaptarse a la normativa de IBAN, por lo que debo implementerale esa mejora.
¿Alguien sabe cómo se validan las cuentas con IBAN? No se ni por donde empezar, porque desconozco esta normativa, lógica, etc....
Espero vuestra ayuda.
Esta e smi función de validación de cuenta:
Código:
function validateCreditAccount (field, rules, i, options) {
if (field.val() != "") {
var banco = field.val().substring(0,4);
var sucursal = field.val().substring(4,8);
var dc = field.val().substring(8,10);
var cuenta=field.val().substring(10,20);
var CCC = banco+sucursal+dc+cuenta;
if (!/^[0-9]{20}$/.test(banco+sucursal+dc+cuenta)){
return ("Formato de Cuenta Corriente incorrecto");
} else {
valores = new Array(1, 2, 4, 8, 5, 10, 9, 7, 3, 6);
control = 0;
for (i=0; i<=9; i++)
control += parseInt(cuenta.charAt(i)) * valores[i];
control = 11 - (control % 11);
if (control == 11) control = 0;
else if (control == 10) control = 1;
if(control!=parseInt(dc.charAt(1))) {
return ("Número de Cuenta Corriente incorrecto");
}
control=0;
var zbs="00"+banco+sucursal;
for (i=0; i<=9; i++)
control += parseInt(zbs.charAt(i)) * valores[i];
control = 11 - (control % 11);
if (control == 11) control = 0;
else if (control == 10) control = 1;
if(control!=parseInt(dc.charAt(0))) {
return ("Número de Cuenta Corriente incorrecto");
}
// return true;
}
}
}
Saludos.