jquery验证二代身份证

jquery验证二代身份证$(‘#idcardno’).blur(function(){varidcard=$(this).val();varreg=/^\d{17}\d|x$/;varis_ok=reg.test(idcard);vararrExp=[7,9,10,5,8,4,2,1,6,3,7,9…

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

$('#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.net/153649.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python换行符使用_python中怎么换行?「建议收藏」

    python换行符使用_python中怎么换行?「建议收藏」Windows换行符是’\r\n’,Unix/Linux的换行符为’\n’,Mac的换行符为’\r’,在python中,对换行符进行了统一处理,定义为’\n。方法一、使用“\”进行换行输入:1、在python中,Python用反斜线(“\”)作为续行符(换行符),这里以python3.5为例。首先运行终端或者cmd命令行(windows下),执行python3.5的命令。2、然后输入如下图所…

    2022年8月30日
    4
  • 微信小程序页面跳转传参(对象、数组)「建议收藏」

    跳转事件jump:function(e){ letarray={id:1,name:’张三’}wx.navigateTo({url:’/pages/index/index?array=’+JSON.stringify(array), })}跳转页面onLoad:function(options){ console.log(‘跳转事件参数’,JSON.parse(options.array))},遇到问题可以看我主页加

    2022年4月16日
    83
  • shell输出数组元素_shell中使用数组

    shell输出数组元素_shell中使用数组数组介绍平时的定义a=1,b=2,c=3,变量如果多了,再一个一个定义很费劲,并且取变量的也费劲简单的说,数组就是相同数据类型的元素按一定顺序排列的集合数组就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们得边合。这个名字成为数组名,编号成为数组下标。组成数组的各个变量成为数组的分称为数组的元素,有时也称为下标变量数组定义与增删改查法1:array=(value1value2valu…

    2025年7月23日
    4
  • Velocity常用语法「建议收藏」

    Velocity常用语法「建议收藏」一、基本语法1、"#"用来标识Velocity的脚本语句,包括#set、#if、#else、#end、#foreach、#end、#iinclude、#parse、#macro等;如:#if($info.imgs)&lt;imgsrc="$info.imgs"border=0&gt;#else&lt;imgsrc="noPhoto.jpg"&gt;#end2、"$"用来标识一个对象(或理解

    2022年9月1日
    5
  • drupal安装教程(6.X版安装教程)【图文教程】[通俗易懂]

    drupal安装教程(6.X版安装教程)【图文教程】[通俗易懂]
    由于英文不是很好,而且在安装时遇到很多困难,所以把在网上找到的drupal详细安装步骤分享一下,希望能帮助更多人。

    1、先下载drupal6.X版拷到web根目录下,从浏览器打开链接,会直接进入安装页面。
    如图1所示,先让你选择安装语言,选第一个“InstallDrupalinEnglish”

    图1
    点击“InstallDrupalinEnglish”以后出现图2所示的错误提示,然后按照错误提示的操作步骤

    2022年7月20日
    15
  • Kafka入门经典教程_kafka菜鸟教程

    Kafka入门经典教程_kafka菜鸟教程转自:https://blog.csdn.net/yuan_xw/article/details/512109541Kafka入门教程1.1消息队列(MessageQueue)MessageQueue消息传送系统提供传送服务。消息传送依赖于大量支持组件,这些组件负责处理连接服务、消息的路由和传送、持久性、安全性以及日志记录。消息服务器可以使用一个或多个代理实例。J…

    2022年10月16日
    3

发表回复

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

关注全栈程序员社区公众号