jQuery validate运作流程以及重复提示错误问题
一,运作流程
jQuery validate要想运作,首先要加载相应的js
<script type="text/javascript" src="/js/class/jquery-1.3.2.min.js"></script> <!--begin of validate--> <script src="/js/class/jquery.validate.js" type="text/javascript" ></script> <script src="/js/class/jquery.metadata.js" type="text/javascript" ></script> <script src="/js/class/jquery.validate.messages_cn.js" type="text/javascript" ></script> <!--end of validate-->
加载完毕之后,就可以使用了,但是什么时候才真正的触发验证效果呢
答案是,表单提交时触发!
具体的流程如下:
//第二步:接收到提交信息,进行验证 $("#form1").validate({ submitHandler:function(form){ //第三步:验证完毕,真正的提交 form.submit(); } }); //提交 $(".make_sure").click(function(){ //第一步:提交 $("#form1").submit(); });
如果表单不提交,jQuery validate就收不到验证信息,就不会触发效果!!!
第二步具体的流程:
a.接到验证通知之后,jQuery validate就会查询页面中需要验证的表单项。
b.查到之后,就会获取到表单的值,并调用内置的或用户自定义的函数!
c.验证是否合法,如果非法的话,就将错误提示自动添加到被验证的表单后面!
d.检测是否全部通过验证,如果通过,表单成功提交,进入第三步
PS:这是我对它流程的理解,里面还有很多隐藏的奥秘,自己去揣摩体会吧!
二,重复提示错误
下面谈谈今天遇到的重复提示错误的问题,
每次提交表单,都会将错误信息加到后面,会越来越长,很难看!
后来我到网上查询,发现是form表单被包裹在table里面导致的,
后来我将table放到form里面,然后测试了一下发现果然正常了!不会继续重复的错误提示了!