zoukankan      html  css  js  c++  java
  • Jquery校验中国身份证号码是否正确

    在项目中使用表单时经常会涉及到身份证号码是否正确的校验,下面看看应该中国二代身份证号码应该怎么用Jquery校验呢?

    二代身份证校验码的计算方法

    二代身份证由17位数字和一位校验码组成,那么校验方法是怎样的呢?

    1. 将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。
    2. 将这17位数字和系数相乘的结果相加。
    3. 用加出来和除以11,得到余数
    4. 余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。

    使用Jquery校验身份证

    function check_id(value){
        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(/^d{17}d|x$/i.test(value)){   
            var sum = 0, idx;  
            for(var i = 0; i < value.length - 1; i++){  
                // 对前17位数字与权值乘积求和  
                sum += parseInt(value.substr(i, 1), 10) * arrExp[i];  
            }  
            // 计算模(固定算法)  
            idx = sum % 11;  
            // 检验第18为是否与校验码相等  
            return arrValid[idx] == value.substr(17, 1).toUpperCase();  
        }else{  
            return false;  
        }  
    }
    JavaScript

    原文链接:https://beltxman.com/1711.html,若无特殊说明本站内容为行星带原创,未经同意禁止转载!

    更多精彩,敬请关注本博微信公众号:hsu1943

  • 相关阅读:
    vi 整行 多行 复制与粘贴
    FPGA设计—UVM验证篇 Hello world
    武汉市最大的二手车市场
    vim 使用技巧
    CentOS 7下的软件安装方法及策略
    搜索插件:ack.vim
    Vim插件管理
    【一】 sched.h
    Android USB驱动源码分析(-)
    在Python中反向遍历序列(列表、字符串、元组等)的五种方式
  • 原文地址:https://www.cnblogs.com/hugeboke/p/12522833.html
Copyright © 2011-2022 走看看