如何取消已使用本机javascript启动的AJAX请求

时间:2013-10-06 00:30:41

标签: javascript ajax

有人可以告诉我如何取消原生javacript中的Ajax请求,并使用完全相同的原生javascript取消请求。

我的目标是提供一个我正在编写后台任务的脚本,以检查请求是否已在特定时间内完成,如果还没有,那么如果请求仍在等待,那么

因此我看到的所有脚本都被标记为Javascript,但实际上是JQuery,我完全不感兴趣,而且我更愿意编写自己的方法而不使用我不感兴趣的东西。

所以感谢一点帮助。

所以我使用像

这样的命令
xmlHTTP.cancel();

xmlHTTP.kill();

我知道JQuery已经中止但是这是本机命令的别名,所以指针会受到赞赏。

2 个答案:

答案 0 :(得分:2)

abort() - 它就在文档中。

答案 1 :(得分:-2)

我建议您使用jQuery并使用jQuery.ajax方法初始化XHR Call。您可以使用abort方法来终止现有的XHR调用。

var xhr = null;

if (xhr != null) {
    xhr.abort();    //If xhr is not null then abort before init new XHR call
}

var xhr = jQuery.ajax({
        cache: false,
        url: "http://www.example.org/ajax.php",
        dataType: "json",
        data: {
            param1: "",
            param2: ""
        },
        type: "POST",
        crossDomain: true,
        beforeSend: function (jqXHR, settings) {
            //TODO
        },
        success: function (data) {
            //TODO
        },
        error: function (jqXHR, textStatus, errorThrown) {
            //TODO
        },
        complete: function (jqXHR, textStatus) {
            //TODO

            xhr = null;    //nulify xhr once we finish XHR call
        }
    });