JavaScript验证18位身份证号码最后一位正确性的实现代码
更新时间:2014年08月07日 11:00:24 投稿:junjie
这篇文章主要介绍了JavaScript验证18位身份证号码最后一位正确性的实现代码,小编亲测有效,需要的朋友可以参考下
根据身份证号码推算出最后一位的正确性,如果不正确还会给出正确结果,非常有意思的一断程序。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>javascript 18位身份证号码最后一位校验码</title> </head> <body> <script> function getIDChar18(id) { var arr = id.split(''), sum = 0, vc = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; for (var i = 0; i < 17; i++) sum += vc[i] * parseInt(arr[i]); return ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'][sum % 11]; } function ValidID(id) { if (/^\d{18}$/.test(id)) { var c = id.charAt(17), rc = getIDChar18(id); if (c == rc) showRst('您输入的18位身份证号码正确!<br>生日:' + id.substr(6, 8) + '<br>性别:' + ['女', '男'][parseInt(id.charAt(16)) % 2]); else showRst('您输入的18位身份证号码检验码错误,18位校验码应该为' + rc + '!'); } else showRst('请输入18位数字的身份证号码!'); } function showRst(msg) {document.getElementById('rst').innerHTML=msg } </script> <input type="text" onblur="ValidID(this.value)" /> <div id="rst"></div> </body> </html>
相关文章
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
one()方法功能是为所选的元素绑定一个仅触发一次的处理函数,感兴趣的朋友可以了解下它的调用语法为:one(type, [data], fn),阅读本文或许有意外的收获呢2013-02-02小心!AngularJS结合RequireJS做文件合并压缩的那些坑
小心!AngularJS结合RequireJS做文件合并压缩的那些坑,大家在做文件合并压缩的时候一定要注意,感兴趣的朋友可以参考一下2016-01-01iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
近期需要一个iframe自适应高度的东西,在网上找了很多,都不能用……一看大体的日期都是大概 2008年前后的其他近期的基本都是以前的转载,所以只好自己动手了。2010-07-07
最新评论