js根据身份证获取性别,年龄,生日信息

js关键代码

    <script src="../scripts/jquery/jquery-1.10.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        function IdCard(UUserCard, num) {
            if (num == 1) {
                //获取出生日期
                birth = UUserCard.substring(6, 10) + "-" + UUserCard.substring(10, 12) + "-" + UUserCard.substring(12, 14);
                return birth;
            }
            if (num == 2) {
                //获取性别
                if (parseInt(UUserCard.substr(16, 1)) % 2 == 1) {
                    //
                    return "";
                } else {
                    //
                    return "";
                }
            }
            if (num == 3) {
                //获取年龄
                var myDate = new Date();
                var month = myDate.getMonth() + 1;
                var day = myDate.getDate();
                var age = myDate.getFullYear() - UUserCard.substring(6, 10) - 1;
                if (UUserCard.substring(10, 12) < month || UUserCard.substring(10, 12) == month && UUserCard.substring(12, 14) <= day) {
                    age++;
                }
                return age;
            }
        }

        function Calculate() {
            var id = document.getElementById("IDNumber").value;
            var reg = /(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/;
            if (reg.test(id) === false) {
                alert("身份证输入不合法");
                return false;
            } else {
                var ID = $('#IDNumber').val();
                alert("年龄:" + IdCard(ID, 3) + ",  性别:" + IdCard(ID, 2) + ",  出生日期:" + IdCard(ID, 1));
                return true;
            }
            
        }
    </script>

测试Html

<input id="IDNumber" type="text" />
<input id="Button2" type="button" value="计算" onclick="return Calculate();" />
原文地址:https://www.cnblogs.com/hyyweb/p/7646371.html