复制代码 代码如下:
var certcardvalid = function(id){
var arrverifycode = [1,0,x,9,8,7,6,5,4,3,2];
var wi = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
var checker = [1,9,8,7,6,5,4,3,2,1,1];
var msg = ;
if(id.length != 15 && id.length != 18) {
ext.messagebox.alert(信息提示,身份证号共有15位或18位。);
return false;
}
var ai = id.length == 18 ? id.substring(0,17) : id.slice(0,6) + 19 + id.slice(6,16);
if (!/^/d+$/.test(ai)) {
ext.messagebox.alert(信息提示,身份证除最后一位外,必须为数字。);
return false;
}
var yyyy = ai.slice(6,10);
var mm = ai.slice(10,12)-1;
var dd = ai.slice(12,14);
var d = new date(yyyy,mm,dd);
var now = new date();
var year = d.getfullyear();
var mon = d.getmonth();
var day = d.getdate();
if (year != yyyy || mon != mm || day != dd) {
ext.messagebox.alert(信息提示,身份证无效。);
return false;
}
for(var i = 0,ret = 0; i ret += ai.charat(i) * wi[i];
}
ai += arrverifycode[ret %= 11];
ai = ai.touppercase();
if(id.length == 18 && id != ai){
ext.messagebox.alert(信息提示,身份证无效。);
return false;
}
return true;
};