前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jquery验证二代身份证

jquery验证二代身份证

作者头像
全栈程序员站长
发布2022-09-14 14:35:54
1K0
发布2022-09-14 14:35:54
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

代码语言:javascript
复制
$('#idcardno').blur(function () { 
   
        var idcard = $(this).val();
        var reg = /^\d{17}\d|x$/;
        var is_ok = reg.test(idcard);

        var arrExp = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];//加权因子
        var arrValid = [1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2];//校验码
        if (is_ok) { 
   
            var sum = 0, idx;
            for (var i = 0; i < idcard.length - 1; i++) { 
   
                // 对前17位数字与权值乘积求和
                sum += parseInt(idcard.substr(i, 1), 10) * arrExp[i];
            }
            // 计算模(固定算法)
            idx = sum % 11;
            // 检验第18为是否与校验码相等
            if (arrValid[idx] == idcard.substr(17, 1)) { 
   
                $('#idcardinfo').html('ok').css({ 
   'color': 'green'})
            } else { 
   
                $('#idcardinfo').html('身份证号码错误').css({ 
   'color': 'red'})
            }

        } else { 
   
            $('#idcardinfo').html('身份证号码错误').css({ 
   'color': 'red'})
        }

    });

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/153649.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档