我有一个执行 ajax 功能的按钮。 有时服务器会滞后,因此用户可能会按更多次,认为第一次它不起作用...... 主要的ajax函数如下所示:
$.ajax({
type: "POST",
url: "page.php",
dataType: "html",
data:"data=data",
success: function(){
ajax2();
ajax3();
}
});
由于 ajax 函数更新了数据库并创建了其他 2 个 ajax 函数,因此我需要阻止按钮重新创建主 ajax 函数... 仅当 ajax2() 和 ajax3() 完成时,如果按下按钮,则必须重新创建 ajax 函数。 希望能很好地解释我的问题!
最佳答案
禁用该按钮,然后在 2 个 ajax 完成后重新启用它
/// the click event
$('yourbutton').prop("disabled",true);
/// show a loading or something....
$.ajax({
type: "POST",
url: "page.php",
dataType: "html",
data:"data=data",
success: function(){
var ajax1 = ajax2();
var ajax2 = ajax3();
$.when(ajax1,ajax2).done(function(risp1,risp2){
console.log(risp1,risp2);
$('yourbutton').prop("disabled",false);
/// hide the loading
});
}
});
阅读this了解更多信息
关于php - 在上一次调用成功之前阻止 ajax 脚本执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31809216/