jQuery ajax双重调用

时间:2013-03-13 17:48:05

标签: javascript jquery ajax

我有jquery(ajax)的问题,我有这个功能:

page: function(p, cont) {

    cont = typeof cont !== 'undefined' ? cont : this;

    $.ajax({
        url: p,
        timeout: 10000,
        complete: function() {...}
    }).done(function(html) {
        $(cont).append(html);
    });

}

当我在html(onClick)中使用此功能时,每当我点击按钮请求重复时,如何防止这种情况?我想只加载一次内容。

注意:此功能仅由多个按钮使用。

谢谢!

1 个答案:

答案 0 :(得分:-1)

您可以尝试将全局范围内的变量用作“阻止程序”,例如:

var blocker = false;

page: function(p, cont) {
    if(!blocker){
        blocker = true;
    }else{
        return;
    }
    cont = typeof cont !== 'undefined' ? cont : this;   
    $.ajax({
        url: p,
        timeout:10000,
        complete: function() { ... }
        }).done(function(html) {
            $(cont).append(html);
    });

}