jquery.validate清除表单的验证结果

本文探讨了如何使用jQuery.validate库时遇到的表单验证结果清除问题。通过深入分析,我们了解到Validator对象的resetForm()函数能帮助清空之前验证状态,并提供了相关代码示例。

发现bug:

jquery.validate无法清除同表单的上次验证结果,如下:
在这里插入图片描述

分析bug:

查阅官方文档之后,观察validate的返回类型,可以发现validate 方法返回一个 Validator 对象。

名称返回类型描述
validate(options)Validator验证所选的Form

Validator 对象有很多方法可以用来引发校验程序或者改变 form 的内容,下面列出几个常用的方法。

名称返回类型描述
form()Boolean验证form返回成功还是失败
element(element)Boolean验证单个元素是成功还是失败
resetForm()undefined把前面验证的Form恢复到验证前的状态
showErrors(errors)undefined显示特定的错误信息

我们可以利用上面的resetForm()函数清空上次表单的验证结果

解决bug:

var validate='';
  function vform(dom,func) {
            validate=$('#'+dom).validate({
               rules: {
                   snoAllocation: {
                       required: true
                   },
                   statusAllocation1:{
                       equalTo:'#statusAllocation'
                   },
                   "dormInfo.id":{
                       required:true
                   }
               },
               messages:{
                    snoAllocation:{
                       required:'请选择要分配的学生'
                   },
                   statusAllocation1:{
                        equalTo:'该宿舍已住满'
                   },
                   "dormInfo.id":{
                        required:'请选择院系'
                   }
               },
               submitHandler:function () {
                   func();
               }
            });
            //下面这句代码加在你代码合适的地方,不一定非要放在这里
           validate.resetForm();
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别团等shy哥发育

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值