jQuery.validator.addMethod自定义验证

jQuery.validator.addMethod("numOrLetter", function(value, element) {
return this.optional(element) || /^[0-9|A-Z|a-z]+$/.test(value);
}, "请输入数字或字母");

$("#inputForm").validate({
    rules : {
        //要校验的表单名称
        operationCode : {
            //自定义的校验规则
            numOrLetter:true,
            //ajax校验,通过后台服务校验用户所输内容是否已在数据库中存在,后台服务只需要返回true或false即可,boolean类型,String类型都可
             remote:{
                //这里通过get方式,参数放在Url后,刚开始?后写了operationCode=,请求发送后,url变成?operationCode=&operationCode=value
                //所以就去掉了
                url:"${ctx}/operation/operation/validateCode?" + $("#operationCode").val(),
                type:"GET",
                dataType:"json"
                //POST方式时,可以通过
                //data:{paramName:value,...}传递参数
            }
        }
    },
    messages:{
        operationCode:{
            //这里指定出错信息
            remote:"指定的编号已存在"
        }
    }
});

ajax校验,可以使用自带的remote,也可以通过addMethod()添加

jQuery.validator.addMethod("checkUnique", function(value, element) {
    var deferred = $.Deferred();//创建一个延迟对象
    $.ajax({
        url:"${ctx}/operation/operation/listJson?operationCode="+value,
        async:false,//要指定不能异步,必须等待后台服务校验完成再执行后续代码
        dataType:"json",
        success:function(page) {
            var len = page.rows.length;
            if (len > 0) {
                deferred.reject();
            } else {
                deferred.resolve();   
            }
        }
    });
    //deferred.state()有3个状态:pending:还未结束,rejected:失败,resolved:成功
    return deferred.state() == "resolved" ? true : false;
}, "编号已存在");

通过addMethod()添加的ajax校验比remote的好处:
remote()请求的服务返回结果必须为boolean或String类型的 true或false,这样要校验的话,后台必须添加这样的服务
addMethod(),使用$.ajax()就可以在success中对服务返回的数据进行处理判断来,这样就把后台的工作(返回true,false)转到前台了

时间: 2024-11-09 08:29:58

jQuery.validator.addMethod自定义验证的相关文章

jQuery validator addMethod 动态提示信息

想通过validate的自定义验证,即验证输入格式,又想验证关键字个数 $.validator.addMethod("stringCheck", function(value, element) { var pattern = /^(?!,)([a-zA-Z0-9\u4e00-\u9fa5]+[,]?)+[a-zA-Z0-9\u4e00-\u9fa5]+$/; if(!pattern.test(value)){ $(element).data('error-msg','格式错误!');

客户端验证的极品--jQuery.validator

最近在做一个用户注册登录的页面,资料查寻过程中发现了一个非常不错的客户端验证的极品-jQuery.validate.它是著名的JavaScript包jQuery的一个插件,其实它还有其它的一些插件应该都爽,有待慢慢来学习 官方地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ jQuery用户手册:http://jquery.org.cn/visual/cn/index.xml 开发使用起来非常简单明了, 我的代码:

jQuery Validate 表单验证插件----自定义一个验证方法

一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW  访问密码 f224 二.引入依赖包 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script src="lib/jquery.validate.js" type="text/javascript"

jquery.validate remote 和 自定义验证方法

jquery.validate remote 和 自定义验证方法 $(function(){ var validator = $("#enterRegForm").validate({debug:false, //调试模式取消submit的默认提交功能//errorClass: "error",//默认为错误的样式类为:error//validClass: "check",//验证成功后的样式,默认字符串validfocusInvalid: tr

Jquery Validate 默认校验规则及常用的自定义验证规则

Jquery Validate 相关参数及常用的自定义验证规则 一.官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 二.默认校验规则 (1).required:true 必输字段 (2).remote:"remote-valid.jsp" 使用ajax方法调用remote-valid.jsp验证输入值 (3).email:true 必须输入正确格式的电子邮件 (4).url:true 必须输入正确格式

jquery插件-表单验证插件-validator对象

三 Validator对象 1.介绍:Validate方法返回的对象称作Validator对象 2.使用 Validator对象常用方法 Validator.form() 返回:Boolean 验证:form返回成功还是失败(整个表单) Validator.element() 返回:Boolean 验证单个元素是成功还是失败(单个的表单元素) Validator.resetForm() 把前面验证的Form回复到验证前的状态 Validator.showErrors() 显示特定的错误信息 Va

jquery validate 自定义验证方法

query validate有很多验证规则,但是更多的时候,需要根据特定的情况进行自定义验证规则. 这里就来聊一聊jquery validate的自定义验证. jquery validate有一个方法,可以让用户来自定义验证规则. 案例一: //自定义验证 $.validator.addMethod("isPositive",function(value,element){ var score = /^[0-9]*$/; return this.optional(element) ||

jquery validate 自定义验证方法(不固定验证)

//自定义验证输入价格 jQuery.validator.addMethod("PriceCheck", function (value, element) { var breakNumber=0; $(".producPrice").each(function (k, v) { if ($.trim($(this).val()) == "") { $(this).focus(); breakNumber++; return false; } }

Jquery Validate 相关参数及常用的自定义验证规则

一.官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 二.默认校验规则 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 (1).required:true               必输字段 (2).remote:"remote-valid.jsp"   使用ajax方法调用remote-valid.jsp验证输入值 (3).email:true