javascript 18位身份证号码最后一位校验码

  javascript 18位身份证号码最后一位校验码源代码

<title>javascript 18位身份证号码最后一位校验码</title>
<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>

 

加支付宝好友偷能量挖...


原创文章,转载请注明出处:javascript 18位身份证号码最后一位校验码

评论(0)Web开发网
阅读(91)喜欢(0)JavaScript/Ajax开发技巧