如果在页面上多次单击按钮 - 有没有办法找出使用javascript / jquery回发已在进行中并取消新提交页面的尝试?
由于
答案 0 :(得分:0)
您可以在第一次单击时禁用该按钮,以便在帖子正在进行时无法单击该按钮,并在回发完成后重新启用它。
<script type="text/javascript" language="JavaScript">
var submitted = false;
function SubmitTheForm() {
if(submitted == true) { return; }
document.myform.submit();
document.myform.mybutton.value = 'Thank You!';
document.myform.mybutton.disabled = true;
submitted = true;
}
</script>
<form method="post" action="#">
<input type="submit" onclick=return SubmitTheForm()>
</form>
答案 1 :(得分:0)
您可以通过禁用任何可能导致表单提交的表单元素来避免用户双击。
结帐http://greatwebguy.com/programming/dom/prevent-double-submit-with-jquery/以获取示例。
答案 2 :(得分:0)
您可以随时禁用onclick处理程序中的按钮。
$('input[type="submit"]').click(function(e) {
e.preventDefault();
var self = this;
$(self).attr('disabled', 'disabled');
$.post('url',$(self).closest('form').serialize(), function() {
$(self).removeAttr('disabled'); // re-enable after request complete.
});
});
答案 3 :(得分:-1)
您可以将click事件中的click事件设置为true,并且只允许处理程序在值为false时继续执行。当然,当你的回调结束时,你必须再次将它设置为假。
if (!processInProgress) {
processInProgress = 1
// start the process
}