代码如下

 

function isChinaCertificationNumber(I){
if(typeof(I)=="object"){
I=I.value;
}
var F=0,D="",G=I,E=G.length;
if(!/^\d{17}(\d|X|x)$/i.test(G)&&!/^\d{15}$/i.test(G)){
return false;
}
G=G.replace(/X|x$/i,"a");

if(E==18){
sBirthday=G.substr(6,4)+"-"+Number(G.substr(10,2))+"-"+Number(G.substr(12,2));
var B=new Date(sBirthday.replace(/-/g,"/"));
if(sBirthday!=(B.getFullYear()+"-"+(B.getMonth()+1)+"-"+B.getDate())){
return false;
}
for(var C=17;C>=0;C--){
F+=(Math.pow(2,C)%11)*parseInt(G.charAt(17-C),11);
}
if(F%11!=1){
return false;
}
}
else if(E==15){
sBirthday="19"+G.substr(6,2)+"-"+Number(G.substr(8,2))+"-"+Number(G.substr(10,2));
var B=new Date(sBirthday.replace(/-/g,"/")),A=B.getFullYear().toString()+"-"+(B.getMonth()+1)+"-"+B.getDate();
if(sBirthday!=A){
return false;
}
}
return true
}

;~~~