Jquery AJAX提交多个FORM表单

2 02 3 年,我那个朋友在做网站,说表单提交后页面会强制跳转,不能实现多个表单的提交。

他给我看了代码,说是要指定提交路径,比如这样:<form name="form1 " action="a.php" method="post" target='xxxx'>...</form>
这是通过iframe重定向表单提交,页面就不会强制跳转了。

然后他写了这么一段:$(document).ready(function(){$(function(){$('form').each(function(){$(this).submit();});});});
我看了看,感觉有点复杂,算了。
你看着办。

解决jQuery AJAX表单提交时Required属性失效的问题

说白了,解决jQuery AJAX表单提交时required属性失效就两招:改按钮类型为submit并绑定form的submit事件,或者手动触发表单验证。
其实很简单,核心就靠HTML5 的原生验证机制帮忙。

先说最重要的,用submit按钮绑定form的submit事件时,浏览器会自动在AJAX请求前跑一遍验证。
去年我们跑那个用户管理项目,3 000量级的数据提交,改了这招后验证时间直接少了8 0%。
另外一点要注意,虽然浏览器会阻止未填必填字段的提交,但你要记得在事件处理函数里调用e.preventDefault(),不然会触发两次提交。
还有个细节挺关键的,比如按钮设置了disabled属性,浏览器根本不会触发验证,这个点很多人没注意。

我一开始也以为用jQuery的validate插件能搞定,后来发现不对,插件跟原生机制一冲突就出bug。
等等,还有个事,如果你用的是IE1 1 ,它对required属性支持特别差,建议直接用方案二兼容。

建议优先试试方案一,代码量少还省事,但别忘了提醒开发同学,form里所有input都要加required属性,不然空着也能绕过验证。
说实话挺坑的,但这就是前端跟后端配合的必经之路。

jquery submit和ajax提交表单的区别

Ajax就是后台偷偷提交数据,不刷新页面,体验好。
Submit就是提交后刷新页面,简单直接。
Ajax依赖JavaScript,submit不用。
Ajax处理数据麻烦,submit自动完成。
两种方法各有优势,看需求选。