php - 在上一次调用成功之前阻止 ajax 脚本执行

标签 php jquery ajax

我有一个执行 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/

相关文章:

php - 使用单个查询选择表中特定行上方和下方的特定数量的项目

php - 创建更好的随机算法的问题 - 每日传播

javascript - 自动为 MM-YYYY 文本字段插入 "-"或 "/"字符?

javascript - 如何将输入中的单词添加到另一个输入表单

php - 将聊天记录存储在单个数据库表中

php - 拉维尔 5 : Can't POST to route resource

php - 如何使用 PHP 更改图像中的颜色

javascript - 函数式 jQuery : Custom Events or Functions?

jquery - JSSOR(jQuery 插件)的缩略图大小

ajax - 谷歌网站优化工具: track AJAX