jquery.validate remote验证另一种写法
Posted 盛夏微风
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery.validate remote验证另一种写法相关的知识,希望对你有一定的参考价值。
function checkName() { var deferred = $.Deferred();//延迟方法 var Name = $("#name").val(); var Names = $("#names").val(); var Pid = $("#pNodeId").val(); var nodeId = $("#nodeId").val(); $.ajax({ type:"post", url:"../Category/verifyName", async:false, data:{ Name:$("#name").val(), Pid:$("#pNodeId").val(), nodeId: $("#nodeId").val() }, dataType: "html", success: function(data, type) { if(data=="ok"){ deferred.resolve(); }else{ deferred.reject(); } } }); //deferred.state()有3个状态:pending:还未结束,rejected:失败,resolved:成功 return deferred.state() == "resolved" ? true : false; }
remote通过addMethod方式实现:
jQuery.validator.addMethod("valCheckName", function(value, element) { return checkName(); },‘名称已存在‘);
jquey.validate 中调用
//表单校验 $(‘#form‘).validate({ submitHandler:function(form){ if(checkName()){//提交前再次验证是否重名 form.submit(); } }, rules : { name : { required : true, byteRangeLength : [2, 32], valCheckName:true }, note : {byteRangeLength : [3, 200]} } });
以上是关于jquery.validate remote验证另一种写法的主要内容,如果未能解决你的问题,请参考以下文章
怎么用jquery.validate.js 进行 remote 后台验证
jQuery validate 如何清除remote验证的缓存 (在select验证时这个bug尤为明显)