表单验证——jquery validate使用说明

//validate 选项***********************************************************
        $("form").validate({

            debug:true  //进行调试模式(表单不提交)
            rules:{
                name:"required", //自定义规则,key:value的形式,key是要验证的元素,value可以是字符串或对象
                 email:{
                     //内置验证方式
                    required:true, //必填项
                    required:"#aa:checked"表达式的值为真,则必填项
                    required:function(){}返回为真,则必填项
                    email:true,   //验证电子邮箱格式
                    minlength:5,  //设置最小长度
                    maxlength:10, //设置最大长度
                    rangelength:[5,10],//设置一个长度范围[min,max]
                    min:2,        //设置最小值
                    max:8,       //设置最大值
                    range:[2,8]      //设置值的范围
                    url:true,         //验证URL格式
                    date:true,    //验证日期格式(类似30/30/2008的格式,不验证日期准确性只验证格式)
                    dateISO:true, //验证ISO类型的日期格式 例如:2009-06-23
                    dateDE:true,  //验证德式的日期格式(29.04.1994 or 1.1.2006)
                    number:true,  //验证十进制数字(包括小数的)
                    digits:true,  //验证整数
                    creditcard:true, //验证信用卡号
                    accept:""     //请输入拥有合法后缀名的字符串(上传文件的后缀)
                    equalTo:"id名" //验证两个输入框的内容是否相同
                    phoneUS:true   //验证美式的电话号码
                    regex:/正则表达式/     //上面addMethod扩展的验证规则
                }
            }

            messages:{
                name:"Name不能为空",  //自定义的提示信息key:value的形式key是要验证的元素,值是字符串或函数
                email:{
                   required:"E-mail不能为空",
                   email:"E-mail地址不正确"  //validate 内置验证有默认的英语提示 此处为重新自定义
                }
            }

            errorPlacement: function(error,element) {
                element.parents(‘.form-group‘).children(".help-block").html(error); //错误显示的位置 element验证的元素error错误提示
            }

            submitHandler:function(form) {//通过验证后运行的函数,里面要加上表单提交的函数,否则表单不会提交
                $(form).ajaxSubmit();
                //form.submit();
            }

            success:"类名"   //要验证的元素通过验证后的动作,跟一个字符串,会给输出错误的元素追加一个css类
            ignore:".ignore" //对某些元素不进行验证
            onsubmit:false   //是否提交时验证 默认:true
            onfocusout:false //是否在获取焦点时验证 默认:true
            onkeyup:false    //是否在敲击键盘时验证 默认:true
            onclick:false    //是否在鼠标点击时验证(一般验证checkbox,radiobox) 默认:true
            focusInvalid:false //提交表单后,未通过验证的表单(第一个或提交之前获得焦点的未通过验证的表单)会获得焦点 默认:true
            focusCleanup:true  //当未通过验证的元素获得焦点时,并移除错误提示(避免和 focusInvalid.一起使用)默认:false
            errorClass:"类名"  //指定错误提示的css类名,可以自定义错误提示的样式 默认:"error"
            errorElement:"标签" //使用什么标签标记错误 默认:"label"
            wrapper:"标签"      //使用什么标签再把上边的errorELement包起来
            errorLabelContainer:"容器id"  //把错误信息统一放在一个容器里面
            showErrors:function(errorMap,errorList) { //跟一个函数,可以显示总共有多少个未通过验证的元素
                $("#summary").html("Your form contains " + this.numberOfInvalids() + " errors,see details below.");
                this.defaultShowErrors();
            }
        })

        //validate方法 返回一个Validator对象,它有很多方法, 让你能使用引发校验程序或者改变form的内容**************

        $.validator.setDefaults({//设置validator默认
            debug:true,  //把调试模式设置为默认 如果一个页面中有多个表单一般用这种方式
            errorClass: "txt-impt", //设置默认错误提示的css类名
             errorElement: "div"     //设置默认错误提示的标签
        })

        //addMethod(name,method,message)方法:name(自定义rules的key) method(自定义验证方法) message(报错输出的提示)
        jQuery.validator.addMethod("regex",function(value, element, params){  //扩展方法示例:           
            var exp = new RegExp(params); //params rules的value传入的正则表达式
            return exp.test(value);       //value  被验证的input传入的值
        },"输入格式有误");

        //扩展rules规则
        jQuery.validator.addClassRules("name", {
            required: true,
            minlength: 2
        });
        jQuery.validator.addClassRules({
            name: {
                required: true,
                minlength: 2
            },
            zip: {
                required: true,
                digits: true,
            }
        });
        $("#myinput").rules("add", {
            required: true,
            minlength: 2,
            messages: {
                required: "Required input",
                minlength: jQuery.format("Please, at least {0} characters are necessary")
            }
        });
        $("#myinput").rules("remove"); //全部移除验证规则
        $("#myinput").rules("remove", "min max") //移除 min max

        var form=$(‘form‘);
        $(".formBtn").click(function(){ //按钮type非submit or submit按钮不在form内
            console.log("Valid: " + form.valid()) //form.valid() 验证成功返回true
            var validator = $("form").validate(setValidate);
            var formState=validator.form();      //判断验证状态 返回Boolean
                //validator.element("id名") 验证某个元素 返回Boolean
                //validator.resetForm()  把前面验证的FORM恢复到验证前原来的状态
                /*validator.showErrors({
                    "firstname": "I know that your firstname is Pete, Pete!"
                }); 显示自定义的错误信息 */

            if(formState==false){
                return;
            }else{
                //do someing...
            }
        })

        //使用ajax方式进行验证,默认会提交当前验证的值到远程地址,如果需要提交其他的值,可以使用data选项 后台只允许返回false和true
           remote: "check-email.php"
        remote: {
            url: "check-email.php",     //后台处理程序
            type: "post",               //数据发送方式
            dataType: "json",           //接受数据格式
            data: {                     //要传递的数据
                username: function() {
                    return $("#username").val();
                }
            }
        }  

        //meta String方式***************************************************************

        //引入js
        <script type="text/javascript" src="js/jquery.metadata.js"></script>
        <script type="text/javascript" src="js/jquery.validate.js"></script>

        //dom上验证规则写法
        <input type="text" name="email" class="{validate:{ required:true,email:true }}" />

        //设置为meta String验证方式
        $("#myform").validate({
           meta:"validate",
           submitHandler:function() { alert("Submitted!") }
        })
时间: 2024-08-05 11:11:51

表单验证——jquery validate使用说明的相关文章

表单验证——jquery validate使用说明【另一个教程】

[参考:http://www.tuicool.com/articles/y6fyme] jQuery Validate jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自定义方法的 API.所有的捆绑方法默认使用英语作为错误信息,且已翻译成其他 37 种语言. 该插件是由 Jörn Zaefferer 编写和维护的,他

表单验证的validate.js插件---jQuery Validation Plugin

早上在公交车上看了一个关于慕课网的教程<表单验证的validate.js插件---jQuery Validation Plugin>,正好可以用到自己近期开发简易微博的注册页面和登录页面,插件全名叫jquery.validate.js,在引入jquery.validate.js之前要先将jquery.js引入.这个插件主要用于表单的验证,用户在注册和登录时体验十分不错!由于自己只了解关于validate的皮毛,只会简单的应用rule规则和message自定义提示,事实上,validate还有其

JQuery 表单验证--jquery validation

jquery validation,表单验证控件 官方地址 :http://jqueryvalidation.org/ jquery表单验证 默认值校验规则 jquery表单验证 默认的提示 1 <html> 2 <head> 3 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 4 <title>jQuery validatio

学习 表单验证插件validate

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <link rel="stylesheet" href="style.css"> <body> <form action=&q

表单验证神器-validate

最近做表单校验提交的功能特别多,之前都是自己写js,再点击提交的时候,满足验证必填,格式,报错以后的提示,跳转到报错处等等需求,最近同事给推荐了一个插件 用来验证表单,十分好用,在以上功能满足的前提下,还可以对表单进行触发校验,失去焦点校验,也可以自动跳转错误等. 插件名:jquery.validate.js 是一个基于jquery的表单验证工具 官网地址:http://jqueryvalidation.org/     一定要参照官网地址 看,很多东西 其他平台都没有讲清楚,使用的时候绕了很大

(转)表单验证 - jQuery 实现

——选自<锋利的jQuery>(第2版)第5章的例题  5.1.5 表单验证 表单作为HTML最重要的一个组成部分,几乎在每个网页上都有体现,例如用户提交信息.用户反馈信息和用户查询信息等,因此它是网站管理者与浏览者之间沟通的桥梁.在表单中,表单验证的作用也是非常重要的,它能使表单更加灵活.美观和丰富.       以一个简单的用户注册为例.首先新建一个表单,HTML代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Trans

jQuery表单校验jquery.validate.js的使用

一:首先在页面引入 <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery.validate.js"></script> 二:纯HTML代码 <html xmlns="http://www.w3.org/1999/xhtm

表单验证插件——validate

该插件自带包含必填.数字.URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下: $(form).validate({options}) 其中form参数表示表单元素名称,options参数表示调用方法时的配置对象,所有的验证规则和异常信息显示的位置都在该对象中进行设置. 例如,当点击表单中的"提交"按钮时,调用validate插件验证用户名输入是否符合规则,并将异常信息显示在页面中,如下图所示: 在浏览器中显示的效果: 从图中可以看出,在页面中导入了

兼容IE8以下浏览器input表单属性placeholder不能智能提示功能,以及使用jquery.validate.js表单验证插件的问题处理

当前很多表单提示使用了表单属性placeholder,可这属性不兼容IE8以下的浏览器,我自己写了一个兼容处理js // 兼容IE8以下浏览器input不能智能提示功能 if(navigator.appName == "Microsoft Internet Explorer" && (navigator.appVersion.match(/7./i)=="7." || navigator.appVersion.match(/8./i)=="