表单 验证,手机 ,QQ,电子邮箱,数字,邮政编码,身份证,手机号 & 电话

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了表单 验证,手机 ,QQ,电子邮箱,数字,邮政编码,身份证,手机号 & 电话相关的知识,希望对你有一定的参考价值。

好吧写一个自己的表单验证,临时的。

后面还更新:现在依赖jq

    //表单验证 
    function testInput(o,attr,yfn,nfn,run){
        var re = {
            ‘age‘    :/^[^0]\d{0,2}$/,
            ‘null‘    :/\s/,
            ‘qq‘     : /^[1-9][0-9]{4,9}$/,                    //QQ
            ‘email‘ : /^\[email protected][a-z0-9]+(\.[a-z]+){1,3}$/, //电子邮箱
            ‘number‘: /^\d+$/,                            //数字
            ‘mail‘    :/^[1-9]\d{5}$/,                        //邮政编码
            ‘id‘    :/^[1-9]\d{14}|[1-9]\d{17}|[1-9]\d{16}x$/,    //身份证
            ‘call‘    :/(^(\d{3,4}-)?\d{7,8})$|(1[3,4,5,8][0-9]{9})/    //手机号 & 电话
        };
        function go(){
            function fyes(){
                o.removeClass(‘no_verify‘);
                if(yfn)yfn()
                return o.value;
            }
            function fno(){
                o.addClass(‘no_verify‘);
                if(nfn)nfn()
                console.log(‘错误信息:‘+attr)
                return false;
            }

            if(attr && typeof attr !=‘number‘){
                if(o.val() && re[attr].test(o.val())){
                    fyes()
                }else{
                    fno()
                }
            }else if(attr && typeof attr ==‘number‘){
                if(o.val().length>attr){
                    fyes()
                }else{
                    fno()
                }
            }else{
                if(o.val()){
                    fyes()
                }else{
                    fno()
                }
            }
        };
        if(run){ go() }    //run=true  验证一下表单
        o.blur(go);
    };

 

试用方法  ://testInput(  JQ对象 ,  ‘验证属性 || 不传值验证表单不为空 || 数字 验证字节不少于这个数‘ , ‘验证成功fn‘  ,  ‘失败fn‘ , 要不要自执行)

(验证成功返回值,不成功会返回false这里还会对表单加一个class样式:no_verify)

 

var f2=testInput($(‘#phone‘), ‘call‘,‘‘,‘‘,false)  //验证是不是电话或手机

var f5=testInput($(‘#userName‘), ‘‘,‘‘,‘‘,false) //表单不为空

var f12=testInput($(‘#reason‘),20,‘‘,‘‘,false)  //表单不小于20个

 

以上是关于表单 验证,手机 ,QQ,电子邮箱,数字,邮政编码,身份证,手机号 & 电话的主要内容,如果未能解决你的问题,请参考以下文章

QQ手机号微信身份证邮箱正则验证

JS表单验证(长度/数字/汉字/邮箱/手机号等限制)

ValidateUtil工具类

前端表单验证常用的15个JS正则表达式

php表单和缩略图处理类是什么样呢

最常用的15个前端表单验证JS正则表达式