通过js来实现用身份证号来判断性别和出生年月

简介: 通过js来实现用身份证号来判断性别和出生年月

html:

<input type="text" id="shenfenzhenghao" oninput="hao()" placeholder="证件号">
    <input type="text" id="xingbie" disabled="disabled" placeholder="性别">
    <input type="date" id="shengri" disabled="disabled" placeholder="出生年月">

js:

// 通过身份证号来获取性别和生日
      //出生年月
      function hao() {
        // 获取身份证号的input标签
        let IDNu = document.getElementById('shenfenzhenghao');
        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;
        }
        var str = IDNu.value;
        console.log(str);
        var born_border = document.getElementById('shengri');
        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('xingbie');
        if (sec % 2 == 0) {
          sew = "女";
        } else {
          sew = "男";
        }
        console.log(sew);
        sex.value = sew;
        for (i = 0; i < sex.options.length; i++)
          if (sex.options[i].value == sew) {
            sex.options[i].selected = true;
          }
      }
相关文章
|
11天前
|
JavaScript
js 输入身份证获取生日性别年龄
js 输入身份证获取生日性别年龄
|
11天前
|
JavaScript 计算机视觉
js身份证号输入自动判断其性别和出生年月日呢?进来来来来
js身份证号输入自动判断其性别和出生年月日呢?进来来来来
|
11天前
|
JavaScript
js 输入身份证获取生日性别年龄
js 输入身份证获取生日性别年龄
34 0
|
11天前
|
JavaScript 前端开发
js根据身份证号判断性别和生日
js根据身份证号判断性别和生日
31 0
|
6天前
|
前端开发 JavaScript
前端 js 经典:数组常用方法总结
前端 js 经典:数组常用方法总结
15 0
|
1天前
|
JavaScript 前端开发 Java
前端知识点03(JS)
前端知识点概览:了解JS中的this指向,包括全局、函数、new、apply/call/bind及箭头函数的规则。理解script的async和defer属性对脚本加载和执行的影响。探讨setTimeout和setInterval的用法及其在性能上的考量。ES6与ES5的区别在于新语法特性,如let/const、箭头函数、模板字符串、模块化、类和继承等。此外,ES6还引入了Symbol、解构赋值、默认参数、Map/Set和Generator等功能。别忘了点赞和支持作者哦!
8 1
|
1天前
|
JavaScript 前端开发
前端面试02(JS)
本文是前端面试系列的第二篇,主要涵盖了JavaScript的基础知识,包括JS的组成(ECMAScript、DOM、BOM)、内置对象(如String、Array、Math、Date等)、数组操作方法、数据类型检测方法(typeof、instanceof、constructor、Object.prototype.toString.call)、闭包的概念及其特点、前端内存泄漏的原因和类型、事件委托的优势、基本数据类型与引用数据类型的差异、原型链的工作原理以及JS实现继承的多种方式(原型链、构造函数、组合继承等)。文章结尾鼓励读者点赞和支持作者。
7 1
|
2天前
|
JavaScript 前端开发 NoSQL
构建基于Node.js的全栈应用:从前端到后端的完整指南
【5月更文挑战第24天】本文是关于使用Node.js构建全栈应用的指南,涵盖前端(React或Vue)、后端(Node.js + Express)和数据库(MongoDB)的选型与实现。文章介绍了项目结构、前端组件化开发、后端API接口编写、前后端联调及部署上线的注意事项,帮助读者掌握全栈开发流程。
|
4天前
|
移动开发 JavaScript 前端开发
【热门话题】Vue.js:现代前端开发的轻量级框架之旅
Vue.js,由尤雨溪于2014年创建,是一个轻量级的前端框架,因其简洁API、高效渲染和组件系统深受全球开发者喜爱。本文探讨Vue的核心理念、技术架构、开发实践及在现代Web开发中的应用。Vue遵循渐进式框架思想,提供声明式编程、组件化和响应式数据绑定。技术上,它采用双向数据绑定、虚拟DOM和生命周期钩子。开发实践中,Vue CLI和Vuex、Vue Router分别加速开发和管理状态、路由。Vue不仅适用于单页应用,还支持多页应用、移动开发和跨平台项目,拥有丰富的社区生态和插件。随着Vue 3的推出,Vue将持续创新并影响前端开发领域。
26 0
|
6天前
|
前端开发 JavaScript
前端 JS 经典:函数管道
前端 JS 经典:函数管道
5 0