Home > Article > Backend Development > 关于表单重复提交的问题
有一个注册表单 采用的是ajax提交 怎样防止用户重复提交表单,就是在用户提交一次以后 因为其它一些原因还没返回结果前 用户再次提交表单 造成重复数据 请教各位有什么好的办法可以解决
看看下面的代码:
namespace{flags:{}}namespace.flags.submit=true;document.getElementById('btn').addEventListener('click',formSub);function formSub(){ if(namespace.flags.submit){ namespace.flags.submit = false; $.post('addr',{params:'},function(data){ if(data == 'OK'){ alert(OK'); namespace.flags.submit = true; } }); }}
看看下面的代码:
namespace{flags:{}}namespace.flags.submit=true;document.getElementById('btn').addEventListener('click',formSub);function formSub(){ if(namespace.flags.submit){ namespace.flags.submit = false; $.post('addr',{params:'},function(data){ if(data == 'OK'){ alert(OK'); namespace.flags.submit = true; } }); }}
显示一个旋转的菊花吧
然后设置一个发送开关
<script type="text/javascript">window.sending = false;if(!window.sending){ window.sending =true; //在这里开时转菊花 $.post('http://bbs.csdn.net/',{name:'shiki'},function(result){ console.log(result); },'json').always(function(){ window.sending = false; //在这里隐藏菊花 });}</script>
谢谢大家 不错的想法
当用户点击按钮后就将按钮置为不可以使用就可以了。
支持3楼的答案
谢谢大家的热心回答