栏目:Java Web(<--点此查看更多)Java Web 开发相关技术及框架,JSP|Servlet|Javabean|SSH|EJB|HTML|CSS|JavaScript等
  • JavaScript 验证身份证号码是否有效

  • Mon Apr 01 03:18:17 CST 2013 编程者 我要收藏(...) 评论 ...
  • JavaScript 验证身份证号码是否有效
  • // 验证身份证号码是否有效
    function isIdCardNo(inputCtrl) {
        var num = inputCtrl.value;
        if (num == "") {
            return true;
        }
        if (isNaN(num)) {
            alert("\u8f93\u5165\u7684\u8eab\u4efd\u8bc1\u53f7\u4e0d\u662f\u6570\u5b57\uff01");
            inputCtrl.focus();
            inputCtrl.select();
            return false;
        }
        var len = num.length, re;
        if (len == 15) {
            re = new RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{3})$/);
        } else {
            if (len == 18) {
                re = new RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\d)$/);
            } else {
                alert("\u8f93\u5165\u7684\u8eab\u4efd\u8bc1\u53f7\u6570\u5b57\u4f4d\u6570\u4e0d\u5bf9\uff01");
                inputCtrl.focus();
                inputCtrl.select();
                return false;
            }
        }
        var a = num.match(re);
        if (a != null) {
            if (len == 15) {
                var D = new Date("19" + a[3] + "/" + a[4] + "/" + a[5]);
                var B = D.getYear() == a[3] && (D.getMonth() + 1) == a[4] && D.getDate() == a[5];
            } else {
                var D = new Date(a[3] + "/" + a[4] + "/" + a[5]);
                var B = D.getFullYear() == a[3] && (D.getMonth() + 1) == a[4] && D.getDate() == a[5];
            }
            if (!B) {
                alert("\u8f93\u5165\u7684\u8eab\u4efd\u8bc1\u53f7 " + a[0] + " \u91cc\u51fa\u751f\u65e5\u671f\u4e0d\u5bf9\uff01");
                inputCtrl.focus();
                inputCtrl.select();
                return false;
            }
        }
        return true;
    }

  • 信息来源:http://www.bianchengzhe.com (举报这篇文章)
  • 好评(...) 中评(...) 差评(...)