首页 > 后端开发 > php教程 > 关于表单重复提交的问题

关于表单重复提交的问题

WBOY
发布: 2016-06-23 13:47:05
原创
1036 人浏览过

有一个注册表单 采用的是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楼的答案

谢谢大家的热心回答

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板