很多开发者在做表单提交数据到后台的时候,会出现多提交一次,多一条数据的情况,这种原因的是因为服务端未能及时响应结果(网络延迟,并发排队等因素),导致前端页面没有及时刷新,用户有机会多次提交表单如果提交对
很多开发者在做表单提交数据到后台的时候,会出现多提交一次,多一条数据的情况,这种原因的是因为服务端未能及时响应结果(网络延迟,并发排队等因素),导致前端页面没有及时刷新,用户有机会多次提交表单
如果提交对象为按钮的话,可以对按钮设置disabled,此办法适应于按钮提交,此种方法简单粗暴,也是很多人用的办法:
$(".sub").attr('disabled',true)//在按钮提交之后和AJAX提交之前将按钮设置为禁用
$.ajax({
url:'/post.php'
data:{a:1,b,1}
success:function(){
$(".sub").attr('disabled',false)//在提交成功之后重新启用该按钮
},
error: function(){
$(".sub").attr('disabled',false)//即使AJAX失败也需要将按钮设置为可用状态,因为有可能是网络问题导致的失败,所以需要将按钮设置为可用
}
})
沃梦达教程
本文标题为:js如何防止ajax重复提交表单
基础教程推荐
猜你喜欢
- ExtJS 3.x DateField menuListeners 显示/隐藏 2022-09-15
- vue的 Mixins (混入) 2023-10-08
- 解决ajax的delete、put方法接收不到参数的问题方法 2023-02-23
- Vue+WebSocket实现在线聊天 2023-10-08
- 第7天:CSS入门 2022-11-04
- 分页技术原理与实现之无刷新的Ajax分页技术(三) 2023-01-20
- 基于bootstrap的上传插件fileinput实现ajax异步上传功能(支持多文件上传预览拖拽) 2023-02-01
- 关于 css:WebKit (iPad) CSS3: 背景过渡闪烁 2022-09-21
- ECSHOP中实现ajax弹窗登录功能 2023-01-31
- 深入浅析Jsonp解决ajax跨域问题 2022-12-28