Foros del Web » Programando para Internet » Javascript »

validación CIF

Estas en el tema de validación CIF en el foro de Javascript en Foros del Web. Hola buenos días alguíen sabe de alguna pagina o donde expliquen la validación del CIF. A poder ser me gustaría que fuese en JavaScript ya ...
  #1 (permalink)  
Antiguo 16/05/2006, 01:46
Avatar de unaiu  
Fecha de Ingreso: abril-2006
Mensajes: 139
Antigüedad: 18 años
Puntos: 0
validación CIF

Hola buenos días alguíen sabe de alguna pagina o donde expliquen la validación del CIF. A poder ser me gustaría que fuese en JavaScript ya que ahorraria mucho tiempo y podría terminar antes el trabajo que me han mandado.

gracias a todos por compartir vuestros conocimientos
saludos
  #2 (permalink)  
Antiguo 16/05/2006, 05:39
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 19 años, 5 meses
Puntos: 1
buscando por el google (creo que es nueva ;P) me encontré esto:

Cita:
<script language="javascript">

// Comprueba la entrada de datos
function CompruebaDatos(elCIF)
{

var resul = false;
// pasar a mayúsculas
var temp = elCIF.value.toUpperCase();

if (!/^[A-Za-z0-9]{9}$/.test(temp)) // Son 9 dígitos?
alert ("Longitud incorrecta, un CIF consta de 9 dígitos");
else if (!/^[ABCDEFGHKLMNPQS]/.test(temp))
// Es una letra de las admitidas ?
alert("El primer dígito es incorrecto, debe ser una letra de
las siguientes: A,B,C,D,E,F,G,H,K,L,M,N,P,Q,S ");
else
resul = true;
return resul;
}

// La función recibe el CIF completo: A58818501
function ValidaCIF(F)
{

var v1 = new Array(0,2,4,6,8,1,3,5,7,9);
var temp = 0;

for( i = 2; i <= 6; i += 2 )
{
temp = temp + v1[ parseInt(F.elCIF.value.substr(i-1,1))];
temp = temp + parseInt(F.elCIF.value.substr(i,1));
};

temp = temp + v1[ parseInt(F.elCIF.value.substr(7,1))];
temp = (10 - ( temp % 10));

if( temp == 10 )
alert( "El dígito de control es: J ó 0" );
else
alert( "El dígito de control es: "+temp );
return true;
}
</script>
__________________
ALOZORRO v5.0 (ahora en .es)
  #3 (permalink)  
Antiguo 16/05/2006, 09:57
Avatar de unaiu  
Fecha de Ingreso: abril-2006
Mensajes: 139
Antigüedad: 18 años
Puntos: 0
ok gracias lo probare
  #4 (permalink)  
Antiguo 16/05/2006, 10:02
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
Es mejor el que te mandé yo
  #5 (permalink)  
Antiguo 22/05/2006, 10:41
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 21 años
Puntos: 0
pues, visto q es mejor, lo podrias colgar?
Un saludo
__________________
Salut i Força al Canut
  #6 (permalink)  
Antiguo 23/05/2006, 00:17
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
OK.

//Se le pasa el cif como parámetro
function validarCIF(texto)
{
var pares = 0;
var impares = 0;
var suma;
var ultima;
var unumero;
var uletra = new Array("J", "A", "B", "C", "D", "E", "F", "G", "H", "I");
var xxx;
//Pasar el CIF a mayúsculas
texto = texto.toUpperCase();
//Comprobar que "texto" tenga el formato de un CIF
var regular = new RegExp(/^[ABCDEFGHKLMNPQS]\d\d\d\d\d\d\d[0-9,A-J]$/g);
if (!regular.exec(texto)) return false;

ultima = texto.substr(8,1);

for (var cont = 1 ; cont < 7 ; cont ++)
{
xxx = (2 * parseInt(texto.substr(cont++,1))).toString() + "0";
impares += parseInt(xxx.substr(0,1)) + parseInt(xxx.substr(1,1));
pares += parseInt(texto.substr(cont,1));
}

xxx = (2 * parseInt(texto.substr(cont,1))).toString() + "0";
impares += parseInt(xxx.substr(0,1)) + parseInt(xxx.substr(1,1));

suma = (pares + impares).toString();
unumero = parseInt(suma.substr(suma.length - 1, 1));
unumero = (10 - unumero).toString();

if(unumero == 10) unumero = 0;

if ((ultima == unumero) || (ultima == uletra[unumero]))
return true;
else
return false;

}

Saludos.
  #7 (permalink)  
Antiguo 23/05/2006, 01:22
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 21 años
Puntos: 0
Muchas Gracias
__________________
Salut i Força al Canut
  #8 (permalink)  
Antiguo 23/05/2006, 01:22
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 21 años
Puntos: 0
I Aupa Bilbao ;)
__________________
Salut i Força al Canut
  #9 (permalink)  
Antiguo 23/05/2006, 10:57
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
OK, de nada

Cita:
Iniciado por algicor
I Aupa Bilbao ;)

Querrás decir, "Y Aupa Athletic", ¿no? jeje

Encantado.

Aupa el Valencia también

Última edición por aupaneu; 24/05/2006 a las 01:49
  #10 (permalink)  
Antiguo 24/05/2006, 01:42
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 21 años
Puntos: 0
Aupa Valencia mejor,
ya que nos ponemos
Un saludo
__________________
Salut i Força al Canut
  #11 (permalink)  
Antiguo 24/05/2006, 01:50
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
OK, pero Iraola se queda en el Athletic eh

Bueno mejor no mandar mas mensajes que se nos enfadan los moderadores (un saludo a todos).
  #12 (permalink)  
Antiguo 24/05/2006, 01:53
 
Fecha de Ingreso: abril-2003
Mensajes: 260
Antigüedad: 21 años
Puntos: 0
ok, un saludo ;)
__________________
Salut i Força al Canut
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:05.