JS实现的验证身份证及获取地区功能示例

发布时间 - 2026-01-10 22:32:25    点击率:

本文实例讲述了JS实现的验证身份证及获取地区功能。分享给大家供大家参考,具体如下:

这里的代码可以用来验证身份证号,并且根据身份证号来判断是哪个省份及性别

代码示例:

<head >
  <title></title>
  <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
</head>
<body>
  <form id="form1" >
  <label>
    身份证号:</label><input type="text" id="txtId" />
  <input type="button" value="验证" onclick="CheckId()" />
  </form>
</body>
</html>
<script type="text/javascript">
  //定义地区数组
  var CityArray = { 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: "国外" }
  //验证身份证及返回地区、出生年月、性别
  function CheckIdCard(sId) {
    if (sId.length == 15) {
      sId = sId.replace(/([\d]{6})(\d{9})/, "$119$2x");
    }
    var iSum = 0
    var info = ""
    if (!/^\d{17}(\d|x)$/i.test(sId)) return "非法的身份证号";
    sId = sId.replace(/x$/i, "a");
    if (CityArray[parseInt(sId.substr(0, 2))] == null) return "Error:非法地区";
    sBirthday = sId.substr(6, 4) + "-" + Number(sId.substr(10, 2)) + "-" + Number(sId.substr(12, 2));
    var d = new Date(sBirthday.replace(/-/g, "/"))
    if (sBirthday != (d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate())) return "Error:非法生日";
    for (var i = 17; i >= 0; i--) iSum += (Math.pow(2, i) % 11) * parseInt(sId.charAt(17 - i), 11)
    if (iSum % 11 != 1) return "Error:非法证号";
    return CityArray[parseInt(sId.substr(0, 2))] + "," + sBirthday + "," + (sId.substr(16, 1) % 2 ? "男" : "女")
  }
  //调用验证方法
  function CheckId() {
    var id = $("#txtId").val();
    if (id != "") {
      alert(CheckIdCard(id));
    }
  }
</script>

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools./regex/javascript

正则表达式在线生成工具:
http://tools./regex/create_reg

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript正则表达式技巧大全》、《JavaScript替换操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。


# JS  # 验证  # 身份证  # 获取地区  # Jsoup获取全国地区数据属性值(省市县镇村)  # JS获取客户端IP地址、MAC和主机名的7个方法汇总  # JS获取IP、MAC和主机名的五种方法  # JSP 获取真实IP地址的代码  # js获取IP地址的方法小结  # js获取客户端外网ip的简单实例  # JavaScript获取客户端IP的方法(新方法)  # nodejs获取本机内网和外网ip地址的实现代码  # js获取ip和地区  # 正则表达式  # 操作技巧  # 相关内容  # 遍历  # 感兴趣  # 青海  # 宁夏  # 西藏  # 数据结构  # 内蒙古  # 甘肃  # 贵州  # 黑龙江  # 吉林  # 海南  # 新疆  # 山西  # 陕西  # 辽宁  # 给大家 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何使用Gate和Policy进行授权?(权限控制)  如何登录建站主机?访问步骤全解析  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  如何在服务器上三步完成建站并提升流量?  javascript中对象的定义、使用以及对象和原型链操作小结  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  如何在阿里云高效完成企业建站全流程?  Laravel如何实现本地化和多语言支持?(i18n教程)  如何用y主机助手快速搭建网站?  详解Android图表 MPAndroidChart折线图  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  如何快速查询域名建站关键信息?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  英语简历制作免费网站推荐,如何将简历翻译成英文?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  使用Dockerfile构建java web环境  如何在阿里云部署织梦网站?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  Laravel如何实现一对一模型关联?(Eloquent示例)  javascript中闭包概念与用法深入理解  ,南京靠谱的征婚网站?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  如何在万网利用已有域名快速建站?  如何在不使用负向后查找的情况下匹配特定条件前的换行符  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  简单实现jsp分页  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Laravel如何实现多对多模型关联?(Eloquent教程)  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  济南网站建设制作公司,室内设计网站一般都有哪些功能?  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  MySQL查询结果复制到新表的方法(更新、插入)  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  在Oracle关闭情况下如何修改spfile的参数  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  微信小程序 require机制详解及实例代码  如何自定义建站之星网站的导航菜单样式?  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  如何在新浪SAE免费搭建个人博客?  浅谈redis在项目中的应用  Python文本处理实践_日志清洗解析【指导】  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  创业网站制作流程,创业网站可靠吗?  javascript中的try catch异常捕获机制用法分析  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比