您的位置:首页 > Web前端 > JQuery

jQuery validate插件submitHandler提交导致死循环解决方法

2017-08-30 14:54 543 查看
作者:海底苍鹰

地址:http://blog.51yip.com/jsjquery/1511.html

dom对像的提交form.submit();和jquery对像的提交$('').submit();功能上是没有什么区别的。但是如果用了jquery validate插件,提交时这二个就区别大了。$('').submit();提交时,

jquery validate会进行验证,submitHandler里面如果写了$('').submit();会导致死循环,而form.submit();则不会。

一,简单说一下dom对像和jquery对像

dom对像,你要用js的写法来操作,页面中的标签。而jquery对像呢,你要用jquery的语法来操作。

dom对像转换成jquery的对像呢,也很简单,就加上$()这个就行了,然后就可以用jquery的语法来操作,页面中的标签了。我想大家用的最多就是this了。

$('input[name^="hour"]').each(function(index){
 

    this.value=index;        //this是dom对像,js写法  

});  

  

$('input[name^="hour"]').each(function(index){  

    $(this).val(index);      //$(this)是jquery对像,jquery写法  

});  

二,jquery validate 死循环程序

$("#product_form").validate({
 

    focusInvalid:false,  

    submitHandler: function(form){  

        $('.submit').submit();  

    }  

});  

正确写法,

$("#product_form").validate({
 

    focusInvalid:false,  

    submitHandler: function(form){  

        form.submit();  

    }  

});  

出现死循环的时候,浏览器会一直处于加载中,直到浏览器挂掉,这个时候,可以加一个alert,你就会知道,validate一直在循环验证。个人觉得,虽然是个小问题,但是很难想起来。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery 插件 javascript