表单基本信息check

邮箱格式校验:

$("#emailTest").blur(function(){
    var pattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/;
    var email = $("#emailTest").val();
    //test方法 返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式
    flag = pattern.test(email);
        if(flag){    
            alert("恭喜您!您填写的邮箱地址是正确的!");   
            return true;    
        }else {    
                      alert("请再试一次");    
                     return false;    
                } 
    });

护照格式校验:

// 验证护照是否正确
function checknumber(number) {
    var str = number;
    // 在JavaScript中,正则表达式只能使用"/"开头和结束,不能使用双引号
    var Expression = /(P\d{7})|(G\d{8})/;
    var objExp = new RegExp(Expression);
    if (objExp.test(str) == true) {
        return true;
    } else {
        return false;
    }

手机格式验证:

$("#phone").blur(function(){
    var pattern =/^(13[0-9]\d{8}|15[0-35-9]\d{8}|18[0-9]\{8}|14[57]\d{8})$/;
    var ph= $("#phone").val();
    //test方法 返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式
    flag = pattern.test(ph);
        if(flag){    
            alert("恭喜您!您填写的手机号码是正确的!");   
            return true;    
        }else {    
                      alert("请再试一次");    
                     return false;    
                } 
    });

姓名验证:
//20位以内的英文+字母。10位以内的汉字。

s='有了';
if(/^[a-zA-Z ]{1,20}$/.test(s)|| /^[\u4e00-\u9fa5]{1,10}$/.test(s)){
alert(true);
}

时间格式验证:

functionisTime()

{

vartime=
 document.getElementById("time").value

varresult=time.match(/^(d{2}):(d{2}):(d{2})$/);

if(result!=null)

alert("时间格式正确!!!");

else

alert("时间格式不正确,请重新输入!!!");

}

日期格式验证:

functionisDate()

{

vardate=
 document.getElementById("date").value

varresult=date.match(/^(d{4})-(d{2})-(d{2})$/
 ); 

if(result!=null)

alert("日期格式正确!!!");

else

alert("日期格式不正确,请重新输入!!!");

}

IP格式验证:

functionisIP()

{

varip=
 document.getElementById("ip").value

varresult=ip.match
 (/([0-9]{1,3}.{1}){3}[0-9]{1,3}/ ); 

if(result!=null)

alert("IP格式正确!!!");

else

alert("IP格式不正确,请重新输入!!!");

}

身份证简单格式验证:

functionisShenFen()

{

varshenfen=
 document.getElementById("shenfen").value

varresult=shenfen.match(/^d{15}|d{}18$/);

if(result!=null)

alert("身份证格式正确!!!");

else

alert("身份证格式不正确,请重新输入!!!");

}

身份证格式验证详情:



    provinceAndCitys : {
        11 : "北京",
        12 : "天津",
        13 : "河北",
        14 : "山西",
        15 : "内蒙古",
        21 : "辽宁",
        22 : "吉林",
        23 : "黑龙江",
        31 : "上海",
        32 : "江苏",
        33 : "浙江",
        34 : "安徽",
        35 : "福建",
        36 : "江西",
        37 : "山东",
        41 : "河南",
        42 : "湖北",
        43 : "湖南",
        44 : "广东",
        45 : "广西",
        46 : "海南",
        50 : "重庆",
        51 : "四川",
        52 : "贵州",
        53 : "云南",
        54 : "西藏",
        61 : "陕西",
        62 : "甘肃",
        63 : "青海",
        64 : "宁夏",
        65 : "新疆",
        71 : "台湾",
        81 : "香港",
        82 : "澳门",
        91 : "国外"
    },

    powers : [ "7", "9", "10", "5", "8", "4", "2", "1", "6", "3", "7", "9","10", "5", "8", "4", "2" ],

    parityBit : [ "1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2" ],

    genders : {
        male : "男",
        female : "女"
    },

    checkAddressCode : function(addressCode) {
        var check = /^[1-9]\d{5}$/.test(addressCode);
        if (!check)
            return false;
        if (idCardNoUtil.provinceAndCitys[parseInt(addressCode.substring(0, 2))]) {
            return true;
        } else {
            return false;
        }
    },

    checkBirthDayCode : function(birDayCode) {
        var check = /^[1-9]\d{3}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))$/.test(birDayCode);
        if (!check)
            return false;
        var yyyy = parseInt(birDayCode.substring(0, 4), 10);
        var mm = parseInt(birDayCode.substring(4, 6), 10);
        var dd = parseInt(birDayCode.substring(6), 10);
        var xdata = new Date(yyyy, mm - 1, dd);
        if (xdata > new Date()) {
            return false;// 生日不能大于当前日期
        } else if ((xdata.getFullYear() == yyyy)
            && (xdata.getMonth() == mm - 1) && (xdata.getDate() == dd)) {
            return true;
        } else {
            return false;
        }
    },

    getParityBit : function(idCardNo) {
        var id17 = idCardNo.substring(0, 17);

        var power = 0;
        for ( var i = 0; i < 17; i++) {
            power += parseInt(id17.charAt(i), 10)
                    * parseInt(idCardNoUtil.powers[i]);
        }

        var mod = power % 11;
        return idCardNoUtil.parityBit[mod];
    },

    checkParityBit : function(idCardNo) {
        var parityBit = idCardNo.charAt(17).toUpperCase();
        if (idCardNoUtil.getParityBit(idCardNo) == parityBit) {
            return true;
        } else {
            return false;
        }
    },

    checkIdCardNo : function(idCardNo) {
        // 15位和18位身份证号码的基本校验
        var check = /^\d{15}|(\d{17}(\d|x|X))$/.test(idCardNo);
        if (!check)
            return false;
        // 判断长度为15位或18位
        if (idCardNo.length == 15) {
            return idCardNoUtil.check15IdCardNo(idCardNo);
        } else if (idCardNo.length == 18) {
            return idCardNoUtil.check18IdCardNo(idCardNo);
        } else {
            return false;
        }
    },
    // 校验15位的身份证号码
    check15IdCardNo : function(idCardNo) {
        // 15位身份证号码的基本校验
        var check = /^[1-9]\d{7}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}$/.test(idCardNo);
        if (!check)
            return false;
        // 校验地址码
        var addressCode = idCardNo.substring(0, 6);
        check = idCardNoUtil.checkAddressCode(addressCode);
        if (!check)
            return false;
        var birDayCode = '19' + idCardNo.substring(6, 12);
        // 校验日期码
        return idCardNoUtil.checkBirthDayCode(birDayCode);
    },
    // 校验18位的身份证号码
    check18IdCardNo : function(idCardNo) {
        // 18位身份证号码的基本格式校验
        var check = /^[1-9]\d{5}[1-9]\d{3}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}(\d|x|X)$/.test(idCardNo);
        if (!check)
            return false;
        // 校验地址码
        var addressCode = idCardNo.substring(0, 6);
        check = idCardNoUtil.checkAddressCode(addressCode);
        if (!check)
            return false;
        // 校验日期码
        var birDayCode = idCardNo.substring(6, 14);
        check = idCardNoUtil.checkBirthDayCode(birDayCode);
        if (!check)
            return false;
        // 验证校检码
        return idCardNoUtil.checkParityBit(idCardNo);
    },
    formateDateCN : function(day) {
        var yyyy = day.substring(0, 4);
        var mm = day.substring(4, 6);
        var dd = day.substring(6);
        return yyyy + '-' + mm + '-' + dd;
    },
    // 获取信息
    getIdCardInfo : function(idCardNo) {
        var idCardInfo = {
            gender : "", // 性别
            birthday : "" // 出生日期(yyyy-mm-dd)
        };
        if (idCardNo.length == 15) {
            var aday = '19' + idCardNo.substring(6, 12);
            idCardInfo.birthday = idCardNoUtil.formateDateCN(aday);
            if (parseInt(idCardNo.charAt(14)) % 2 == 0) {
                idCardInfo.gender = idCardNoUtil.genders.female;
            } else {
                idCardInfo.gender = idCardNoUtil.genders.male;
            }
        } else if (idCardNo.length == 18) {
            var aday = idCardNo.substring(6, 14);
            idCardInfo.birthday = idCardNoUtil.formateDateCN(aday);
            if (parseInt(idCardNo.charAt(16)) % 2 == 0) {
                idCardInfo.gender = idCardNoUtil.genders.female;
            } else {
                idCardInfo.gender = idCardNoUtil.genders.male;
            }
        }
        return idCardInfo;
    },

    getId15 : function(idCardNo) {
        if (idCardNo.length == 15) {
            return idCardNo;
        } else if (idCardNo.length == 18) {
            return idCardNo.substring(0, 6) + idCardNo.substring(8, 17);
        } else {
            return null;
        }
    },

    getId18 : function(idCardNo) {
        if (idCardNo.length == 15) {
            var id17 = idCardNo.substring(0, 6) + '19' + idCardNo.substring(6);
            var parityBit = idCardNoUtil.getParityBit(id17);
            return id17 + parityBit;
        } else if (idCardNo.length == 18) {
            return idCardNo;
        } else {
            return null;
        }
    }
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值