jquery.validate校验问题--组合条件唯一校验
来源:互联网 发布:java mq原理图 编辑:程序博客网 时间:2024/06/07 02:54
问题描述
校验需求:*为必填项,同时3个必填项还要做唯一校验,即3个必填项唯一确定一条记录
待校验表单如下图,
对于以上问题,需要3个必填项校验通过,然后再做唯一校验,之前我在黑名单类型字段做唯一校验
校验规则
varblack_form = $("#black_form").validate({ rules: { 'hpzl':{required: true}, 'hphm':{required: true,isCarNo:true}, 'hmdlx':{required: true, remote:{ async:false, url: basePath+"vsas/black/isExit.do", //后台处理程序 type: "post", //数据发送方式 dataType: "json", //接受数据格式 data: { //要传递的数据 hpzl: function() { return $('#hpzl').val();}, hphmt: function() {return $('#hphmt').val();}, hphm: function() {return $('#hphm').val();}, hmdlx: function() {return $('#hmdlx').val();} } } } }, ......//错误信息及信息提示位置 });
varblack_form = $("#black_form").validate({ rules: { 'hpzl':{required: true}, // 'hphmt':{required: true}, 'hphm':{required: true,isCarNo:true}, 'hmdlx':{required: true, remote:{ async:false, url: basePath+"vsas/black/isExit.do", //后台处理程序 type: "post", //数据发送方式 dataType: "json", //接受数据格式 data: { //要传递的数据 hpzl: function() { return $('#hpzl').val();}, hphmt: function() {return $('#hphmt').val();}, hphm: function() {return $('#hphm').val();}, hmdlx: function() {return $('#hmdlx').val();} } } } }, ......//错误信息及信息提示位置});
表单提交时,
if($("#black_form").valid()){... ...//逻辑代码}
但是,测试时问题出现,就是我只选择了【黑名单类型】提交,校验通过了,后台报错了,经过排查发现校验不是一个一个校验的,开始看jQuery.validate的文档找到Validator对象element(element)方法:
element(element)是验证单个元素是成功还是失败,返回值是Boolean类型。
解决方式
所以,利用这个解决了以上问题,即,我先利用element(element)方法校验【号牌种类】、【号牌号码】这俩字段,然后再执行表单校验的方法。如下:
if(black_form.element($("#hpzl"))&&black_form.element($("#hphm"))&&$("#black_form").valid()){... ...//逻辑代码}
black_form是我们定义校验规则时,调用validate方法是返回的一个Validator对象。Validator 对象有很多方法,
在本例中其实还用的另一个方法resetForm():把已验证过得表单Form恢复到验证前的状态。
resetForm解决的问题:在做多个条件唯一校验时,当输入条件组合通过校验,此时form状态是校验成功状态,如果
其中某个条件内容变化时,我们应该重新校验,但是valid()方法并没有这么做,form表单状态依然是上次校验的状
态,我们就需要调用Validator的resetForm()方法来恢复form校验前的状态,重新调用valid()校验。
0 0
- jquery.validate校验问题--组合条件唯一校验
- JQuery validate date 日期校验问题
- jquery validate 校验心得
- jQuery validate 校验
- jQuery validate校验
- jQuery校验validate详解
- jquery.validate校验库
- jquery validate表单校验
- jQuery validate 校验
- Jquery validate 前段校验
- jQuery Validate自定义校验
- jQuery中的validate校验
- jquery.validate校验
- [jQuery Validate]前端校验
- JQuery -- Validate, Jquery 表单校验
- jQuery校验---jquery validate 详解
- jquery validate 单个校验+全部校验
- jquery easyui 组合校验
- JavaScript的toString()和valueOf()区别到底是什么
- Android多点触控技术实战,自由地对图片进行缩放和移动
- NumPy 沿不同轴将数组堆叠在一起
- Java Web学习总结(33)——Java Web 程序员如何转型大数据
- 文韬互联:用户该如何选择合适的域名
- jquery.validate校验问题--组合条件唯一校验
- IIS7+ 大文件上传设置
- python调试工具
- Lua获取当前时间
- ELK 在 Spark 集群的应用
- JS实现json格式美化
- bzoj3124(树形dp)
- 从零开始异世界之React Native
- 《敏捷宣言》及其背后的12准则