身份证的验证

[html] ?<script> ?function isIdCardNo(num) ? ? ? ?{ ? ? ? ? ?if (isNaN(num)) {alert(“输入的不是数字!”); return false;} ? ? ? ? ?var len = num.length, re; ? ? ? ? ? if (len == 15) ? ? ? ? ? ?re = new RegExp(/^(d{6})()?(d{2})(d{2})(d{2})(d{3})$/); ? ? ? ? ?else if (len == 18) ? ? ? ? ? ?re = new RegExp(/^(d{6})()?(d{4})(d{2})(d{2})(d{3})(d)$/); ? ? ? ? ?else {alert(“输入的数字位数不对!”); return false;} ? ? ? ? ?var a = num.match(re); ? ? ? ? ?if (a != null) ? ? ? ? ?{ ? ? ? ? ? ?if (len==15) ? ? ? ? ? ?{ ? ? ? ? ? ? ?var D = new Date(“19″+a[3]+”/”+a[4]+”/”+a[5]); ? ? ? ? ? ? ?var B = D.getYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5]; ? ? ? ? ? ?} ? ? ? ? ? ?else ? ? ? ? ? ?{ ? ? ? ? ? ? ?var D = new Date(a[3]+”/”+a[4]+”/”+a[5]); ? ? ? ? ? ? ?var B = D.getFullYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5]; ? ? ? ? ? ?} ? ? ? ? ? ?if (!B) {alert(“输入的身份证号 “+ a[0] +” 里出生日期不对!”); return false;} ? ? ? ? ?} ? ? ? ? ?return true; ? ? ? ?} ?alert(isIdCardNo(‘123456789’)); ?</script> ?[/html] ? ?[color=Red]身份证严格验证[/color] ?[html] ?<script> ?var aCity={11:”北京”,12:”天津”,13:”河北”,14:”山西”,15:”内蒙古”,21:”辽宁”,22:”吉林”,23:”黑龙江”,31:”上海”,32:”江苏”,33:”浙江”,34:”安徽”,35:”福建”,36:”江西”,37:”山东”,41:”河南”,42:”湖北”,43:”湖南”,44:”广东”,45:”广西”,46:”海南”,50:”重庆”,51:”四川”,52:”贵州”,53:”云南”,54:”西藏”,61:”陕西”,62:”甘肃”,63:”青海”,64:”宁夏”,65:”新疆”,71:”台湾”,81:”香港”,82:”澳门”,91:”国外”} ? ? ?function cidInfo(sId){ ? var iSum=0 ? var info=”” ? if(!/^d{17}(d|x)$/i.test(sId))return false; ? sId=sId.replace(/x$/i,”a”); ? if(aCity[parseInt(sId.substr(0,2))]==null)return “Error:非法地区”; ? sBirthday=sId.substr(6,4)+”-“+Number(sId.substr(10,2))+”-“+Number(sId.substr(12,2)); ? var d=new Date(sBirthday.replace(/-/g,”/”)) ? if(sBirthday!=(d.getFullYear()+”-“+ (d.getMonth()+1) + “-” + d.getDate()))return “Error:非法生日”; ? for(var i = 17;i>=0;i –) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 – i),11) ? if(iSum%11!=1)return “Error:非法证号”; ? return aCity[parseInt(sId.substr(0,2))]+”,”+sBirthday+”,”+(sId.substr(16,1)%2?”男”:”女”) ?} ? ?document.write(cidInfo(“380524198002300016″),”<br />”); ?document.write(cidInfo(“340524198002300019″),”<br />”); ?document.write(cidInfo(“340524197711111111″),”<br />”); ?document.write(cidInfo(“34052419800101001x”),”<br />”); ?</script> ?[/html]

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部