zoukankan      html  css  js  c++  java
  • Js 根据身份证号获取年龄-性别

    参考:http://www.tuicool.com/articles/J7r2ien

    方式一:

     $scope.GetAgeAndSexByIDNum = function (IdCardNO)
        {
            // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X  
            var reg = /(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/;
            if (reg.test(IdCardNO) === false)
            {
                alert("身份证号输入不合法");
                return false;
            }
            var date = new Date();
            var yearfull = date.getFullYear();
            if (IdCardNO.length == 18)//18位身份证号处理
            {
                var birthyear = IdCardNO.substring(6, 10);
                var month = IdCardNO.substring(10, 12);
                var day = IdCardNO.substring(12, 14);
                var age = yearfull - birthyear;
                var sexValue = IdCardNO.substring(16, 17);
                var sex = (sexName % 2 == 0 ? "女" : "男");
                if (sex.toString() == "女")
                    sexValue = "2";
                if (sex.toString() == "男")
                    sexValue = "1";
                else sexValue = "3";
                $scope.applyForm.Age = age;
    
                document.getElementById("sex").value = sexValue;
                $scope.patient.sex = sex;
            }
            if (IdCardNO.length == 15)//15位身份证号处理
            {
                var birthDay = "";
                birthDay = IdCardNO.substring(6, 12);
                birthDay = "19" + birthDay;
                birthDay = birthDay.substring(0, 4);// + "-" + birthDay.substring(4, 6) + "-" + birthDay.substring(6)
                var age = yearfull - birthDay;//年龄
                var sex = parseInt(birthDay.substring(14, 1), 10) % 2 ? "男" : "女";//性别
                var sexValue = "";
                if (sex.toString() == "女")
                    sexValue = "2";
                if (sex.toString() == "男")
                    sexValue = "1";
                else sexValue = "3";
                $scope.applyForm.Age = age;
                document.getElementById("sex").value = sexValue;
                $scope.patient.sex = sex;
            }
        };
    

     

    方式二:
    
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="jquery.min.js"></script>
    </head>
    <body>  
    <input type="tel" id="js_Idcard">
    <span id="js_birthday"></span>
    <script>
        $(function(){
            function GetBirthdatByIdNo(iIdNo){
                var tmpStr = "";
                var birthday = $("#js_birthday");
    
                iIdNo = $.trim(iIdNo);
    
                if(iIdNo.length == 15){
                    tmpStr = iIdNo.substring(6, 12);
                    tmpStr = "19" + tmpStr;
                    tmpStr = tmpStr.substring(0, 4) + "-" + tmpStr.substring(4, 6) + "-" + tmpStr.substring(6);
                    sexStr = parseInt(iIdNo.substring(14, 1),10) % 2 ? "" : "";
                    birthday.text(sexStr + tmpStr);
                }else{
                    tmpStr = iIdNo.substring(6, 14);
                    tmpStr = tmpStr.substring(0, 4) + "-" + tmpStr.substring(4, 6) + "-" + tmpStr.substring(6);
                    sexStr = parseInt(iIdNo.substring(17, 1),10) % 2 ? "" : "";
                    birthday.text(sexStr + tmpStr);
                }
            }
    
        $("#js_Idcard").blur(function(){
            GetBirthdatByIdNo($(this).val());
        });
    });     
    </script>
    </body>
    </html>
    
    方式三:
    
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="jquery.min.js"></script>
    </head>
    
    <body>  
    <input type="tel" id="js_Idcard">
    <span id="js_birthday"></span>
    <script>
        $(function(){
            function go(){
             var id = $("#js_Idcard").val();
             var last = id[id.length - 2];
    
             if(last % 2 != 0){
                 $("#js_birthday").text("");
             }else{
                 $("#js_birthday").text("");
             }
         }
    
         $("#js_Idcard").blur(function(){
            go();
         });
    });     
    </script>
    </body>
    </html>

     

     

     

  • 相关阅读:
    WIndows 常见问题解决方案合集
    【日常摘要】- RabbitMq实现延时队列
    【工具】- HttpClient篇
    【java面试】- 集合篇
    【Java面试】- 并发容器篇
    【mysql】- 锁篇(上)
    【mysql】- 锁篇(下)
    【mysql】- 事务隔离级别和MVCC篇
    【mysql】- 索引使用篇
    【mysql】- 索引简介篇
  • 原文地址:https://www.cnblogs.com/YYkun/p/6213782.html
Copyright © 2011-2022 走看看