js正则验证身份证号码(最后一位x不区分大小写)
/*** 身份证号合法性验证 * 支持15位和18位身份证号* 支持地址编码、出生日期、校验位验证*/function IdentityCodeValid(code) { var city={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江 ",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北 ",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏 ",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外 "};var tip = "";var pass= true;if(!code || !/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(code)){tip = "身份证号格式错误";pass = false;}else if(!city[code.substr(0,2)]){tip = "地址编码错误";pass = false;}else{//18位身份证需要验证最后一位校验位if(code.length == 18){code = code.split('');//∑(ai×Wi)(mod 11)//加权因子var factor = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ];//校验位var parity = [ 1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2 ];var sum = 0;var ai = 0;var wi = 0;for (var i = 0; i < 17; i++){ai = code[i];wi = factor[i];sum += ai * wi;}var last = parity[sum % 11];//最后一位不区分大小写if(code[17]=='x') code[17] = code[17].toUpperCase();if(parity[sum % 11] != code[17]){tip = "校验位错误";pass =false;}}}return {'status':pass,'msg':tip};}
js正则验证身份证号码(最后一位x不区分大小写)相关推荐
- js正则验证身份证号码是否真实有效
网上找了很多js,jQuery 正则表达式验证身份证是否有效的方法,多数是验证是否15位数字18位数字或者最后一位是Xx字母,都不太有效避免随便输入数字这种情况.例如下面两种: //身份证正则表达式( ...
- js正则验证身份证号码并 根据号码获取生日和性别
最近项目中碰到一个需求,根据用户输入的身份证号码自动识别生日,和性别,为此专门在网上找了下资料了解了下,建议先了读一遍下边的文章 身份证信息介绍: https://baijiahao.baidu.co ...
- JS(JavaScript)验证身份证号码格式的合法性
一.JS(JavaScript)验证身份证号码格式的合法性,前端工程师会用到JavaScript验证身份证号码是否合法,这里分享一段本人多年以前多写的JavaScript验证输入身份证号码合法性的代码 ...
- js正则匹配身份证号码
js正则匹配身份证号码 2020/12/14 // 匹配大陆身份证号码 function IsID(ids) {let reg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[0 ...
- JS正则表达式验证身份证号码
function isCardNo(card) { // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X var reg = /(^\d{1 ...
- js正则验证身份证号是否正确
微信小程序开发交流qq群 173683895 承接微信小程序开发.扫码加微信. 封装js公共方法 //验证身份证格式 const IdentityCodeValid = sId => ...
- JS正则表达式验证身份证号码、真实姓名
js验证身份证号: var idNo = $('#id_card_no').val(); var regIdNo = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$) ...
- Layui官方js正则验证手机号,邮箱,网址,日期,身份证
Layui官方js正则验证手机号,邮箱,网址,日期,身份证.从官方js里挖出来的,正则表达式,赶紧收藏. js正则验证手机号:/^1\d{10}$/ js正则验证邮箱:/^([a-zA-Z0-9_\. ...
- js验证身份证号码包括最后一位字母
通过正则进行js验证身份证号码: var numRegex = /^([a-zA-Z\d_]{1,18})$/;if (!numRegex.test(val)) {return '请输入身份证号码或格 ...
最新文章
- 中国电子学会scratch等级考试四级编程题:找出出现次数最多的数字
- 资源 | Yann LeCun最新演讲:大脑是如何高效学习的?(附PPT+视频)
- oracle 收回 user,oracle 10.2.0.3对USER收回CONNECT及RESOURCE
- Prometheus 序章/第一/二讲
- 1个月增长15000 star,zx 库写shell脚本真不错~
- 探索.NET平台中的SIMD内在函数Vector
- 知乎个人精选 | 绝版的专业书到哪里找最快最高效?
- mysql数据库查询语句过程_mysql(一) SQL查询语句执行过程
- Node.js: 如何退出node命令或者node server
- java操作redis并发_使用Redis incr解决并发问题的操作
- 只想做程序员的钢铁侠埃隆·马斯克,是如何成为亿万富翁的?
- 洛谷P1351 联合权值(树形dp)
- C/C++ 控制台输入
- [转]paint,update和repaint三种awt方法
- 对数周期天线hfss建模_Ansoft HFSS 在设计对数周期天线时的仿真方法-HFSS教程
- Extjs4.2里Grid显示日期类型数据
- python + opencv 中值滤波器、最大值滤波器和最小值滤波器
- 局域网远程桌面无法连接到远程计算机,局域网无法远程连接桌面怎么解决
- 用photoshop给gif批量加水印
- PDF单位尺寸与像素转换