【发布时间】:2014-02-14 10:13:08
【问题描述】:
我有 jquery/ajax:
$('form').bind('submit', function () {
$.ajax({
type: 'post',
url: "Write-to.php",
data: $("form").serialize(),
success: function () {
$.get("Data.php", function (data1) {
console.log(data1);
$(".data").html(data1);
scrolltobottom();
setFocusToTextBox();
$("#usermsg").val("");
});
$('.submited').show();
$('.submited').html("S E N T");
$("#usermsg").val("");
setTimeout(function () {
$('.submited').fadeOut(1000);
}, 2000);
}
});
return false;
});
但是,当我点击输入时,我仍然需要在$("#usermsg").val(""); 之前等待一段时间,这会导致意外的双重输入,因为用户认为他们实际上没有发送表单。
我已经在php中设置了一个不允许任何空表单的函数。
如何防止多次输入?
【问题讨论】:
-
您可以在点击时修改 UI 以指示表单已提交。然后您可以在错误时恢复,或在成功时继续。一个示例可能是:单击时,禁用提交按钮。出错时,重新启用按钮。成功后,做你的默认行为。