Hola !! me hacia falta algo que validara en un mismo campo el NIF / CIF / NIE . Rebuscando , alfin consegui mi propio script tomando recortes ( soy un poco beginner )

Asique nada , soy nuevo y quiero poner mi granitop de arena AHI VA !!!!!!!! TESTENLO ami me en un principio me va del hujo!!!
Código:
Código Javascript
:
Ver originalfunction nifcifnie(entrada){
var filternif = /^([0-9]){8}([TRWAGMYFPDXBNJZSQVHLCKE])$/;
var filtercif = /^([ABCDEFGHJKLMNPQSV])([0-9]){7}([0-9A-J])$/;
var filternie = /^([XYZ])([0-9]){7}([TRWAGMYFPDXBNJZSQVHLCKE])$/;
////// SE COMPRUEBA CON LOS FILTER QUE TIPO DE DOCUMENTO ES FACILITADO /////
if(filternif.test(entrada)){ ///// SI ES NIF
var dni = parseInt(entrada.substring(0,8));
var letranif = entrada.charAt(8);
var rangnif = 'TRWAGMYFPDXBNJZSQVHLCKE';
var seldni = dni%23;
var pru = rangnif.charAt(seldni);
if(pru!=letranif){
alert('Error al verificar el NIF');
return;
}
}else if(filtercif.test(entrada)){ /////// SI ES CIF
var par = 0;
var imp = 0;
var letras="ABCDEFGHKLMNPQS";
var let=entrada.charAt(0);
for (c=2;c<8;c+=2){
var par = par+parseInt(entrada.charAt(c))
}
for (c=1;c<9;c+=2){
var f = 2*parseInt(entrada.charAt(c))
if (f > 9) f = 1+(f-10)
var imp = imp+f;
}
var parc = par + imp
control = (10 - ( parc % 10))
if (control!=entrada.charAt(8)){
alert("Error al verificar el CIF")
return;
}
}else if(filternie.test(entrada)){ //////// SI ES NIE ////////
if(entrada.substring(0,1)=='X'){
var preletra ='0';
}
if(entrada.substring(0,1)=='Y'){
var preletra ='1';
}
if(entrada.substring(0,1)=='Z'){
var preletra ='2';
}
var nie = parseInt(preletra+entrada.substr(1,8));
var letranie = entrada.charAt(8);
var rangonie = 'TRWAGMYFPDXBNJZSQVHLCKE';
var letranieveri = rangonie.charAt(nie % 23);
if(letranieveri != letranie){
alert('Error al verificar el NIE');
return;
}
}else{
alert('Los datos NIF/CIF/NIE carecen de un formato correcto');
return;
}
}