JS验证身份证号码合法性

<html>
<head>
<script type="text/javascript">
    function validateCard(){
    var strCard=document.getElementById("IdNo").value;    
    var flag = true;
    // 校检身份证18位数字,最后一位数字可为'X'字符;前两位数字不能以0(零)开头
    var regcard = /^([1-9]{2}\d{15})(\d|[x,X])$/;
    if(!regcard.test(strCard))
    {
        flag = false;
    }
    // 校检生日日期
    var _birthday = strCard.substring(6,14);
    var regbirthday =/^((19|20)\d{2})((0[13578]|1[02])(0[1-9]|[12][0-9]|3[0-1])|((02)(0[1-9]|1[0-9]|2[0-8]))|((0[469]|11)(0[1-9]|[12][0-9]|30)))$/;
  //既验证日期格式,生日年份为19**年到20**年,也验证具体月份中的天数
    flag = regbirthday.test(_birthday);    
    if(flag==true){
        alert("合法");
    }
    else{
        alert("不合法");
    }
}

</script>
</head>
<body>
<div id="date" style="margin:auto; width:400px; ">
    <label>身份证号:</label><input type="text" id="IdNo"/>
      <a href="#" onclick="validateCard();">验证</a>
      </div>
</body>
</html>

上一篇:DIV+CSS如何让图片和文字在同一行!


下一篇:6个小而美的es6新特性