js根据身份证号判断性别和生日

简介: js根据身份证号判断性别和生日

根据中国大陆的身份证号码规则,倒数第二位数字是用来表示性别的,奇数代表男性,偶数代表女性。而生日则可以通过身份证号码的前6位数字后的六位数得知。下面是一个使用JavaScript来实现根据身份证号判断性别和生日的示例代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
  </head>
  <body>
    身份证<input type="text" id="sfz" onchange="tific()">
    性别<input type="text" id="xb">
    生日<input type="text" id="sr">
    <script>
      // 根据身份证号显示性别生日
      function tific() {
        let IDNu = document.getElementById('sfz');
        // 获取身份证号的输入框
        console.log(IDNu);
        var re =
          /^\d{6}(((19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])\d{3}([0-9]|x|X))|(\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])\d{3}))$/;
        // 身份证正则表达式
        if (!re.test(IDNu.value)) {
          // 测试身份证是否正确
          alert("身份证号码有误,请重新填写!");
          IDNu.focus();
          //location.replace("");
          return false;
        } else {
          alert('身份证正确')
        }
        var str = IDNu.value;
        console.log(str);
        var born_border = document.getElementById('sr');
        // 获取生日输入框
        try {
          if (typeof(eval(born_border)) == "undefined") {
            //alert('参数born_border为空');
          } else {
            born_border.value = str.substring(6, 10) + "-" + str.substring(10, 12) + "-" + str.substring(12, 14);
          }
        } catch (e) {
          //alert('参数born_border错误');
        }
        //性别 
        let sew = ''
        var sec = str.substring(16, 17);
        var sex = document.getElementById('xb');
        // 获取性别输入框
        if (sec % 2 == 0) {
          sew = "女";
        } else {
          sew = "男";
        }
        console.log(sew);
        sex.value = sew;
        for (i = 0; i < sex.length; i++)
          if (sex.options[i].value == sew) {
            sex.options[i].selected = true;
          }
      }
    </script>
  </body>
</html>


相关文章
|
4月前
|
JavaScript
js 输入身份证获取生日性别年龄
js 输入身份证获取生日性别年龄
|
1月前
|
JavaScript 前端开发 API
vue中将验证表单输入框的方法写在一个js文件中(表达式验证邮箱、身份证、号码、两次输入的密码是否一致)
这篇文章介绍了如何在Vue框架中将表单输入验证逻辑封装到一个JavaScript文件中,并通过正则表达式验证邮箱、身份证、手机号等信息,同时确保两次密码输入的一致性。
|
4月前
|
JavaScript
js生成18位身份证号
js生成18位身份证号
146 0
|
4月前
|
JavaScript
JS严格校验身份证号-(严格校验每一位身份号码)
JS严格校验身份证号-(严格校验每一位身份号码)
227 0
|
4月前
|
JavaScript 计算机视觉
js身份证号输入自动判断其性别和出生年月日呢?进来来来来
js身份证号输入自动判断其性别和出生年月日呢?进来来来来
|
4月前
|
JavaScript
js 输入身份证获取生日性别年龄
js 输入身份证获取生日性别年龄
55 0
生日祝福(HTML+CSS+JavaScript+jQuery)
生日祝福(HTML+CSS+JavaScript+jQuery)
272 0
生日祝福(HTML+CSS+JavaScript+jQuery)
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
70 2
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
63 4
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
55 4