如何中止AJAX呼叫? [重复]

This question already has answers here:
                </div>
            </div>
                    <div class="grid--cell mb0 mt4">
                        <a href="/questions/446594/abort-ajax-requests-using-jquery" dir="ltr">Abort Ajax requests using jQuery</a>
                            <span class="question-originals-answer-count">
                                (17 answers)
                            </span>
                    </div>
            <div class="grid--cell mb0 mt8">Closed <span title="2013-05-31 13:16:39Z" class="relativetime">6 years ago</span>.</div>
        </div>
    </aside>

I am planning on implementing a series of jQuery AJAX calls in my website and would like to develop a function to abort an AJAX call. How can I do this? I read this link already but it doesn't work for me.

</div>

You need to assign your ajax request to variable,

var xhr = $.ajax({
***
});

then call abort()

xhr.abort();

In a single use of AJAX it is simple. The XMLHttpRequest has a abort method, which cancels the request.

// creating our request
xhr = $.ajax({
url: 'ajax/progress.ftl',
success: function(data) {
//do something
}
});

// aborting the request
xhr.abort();

The xhr object also contains a readystate which contains the state of the request(UNSENT - 0, OPENED - 1, HEADERS_RECEIVED - 2, LOADING - 3 and DONE - 4). So we can use this to check whether the previous request was completed.

// abort function with check readystate
function abortAjax(xhr) {
if(xhr && xhr.readystate != 4){
xhr.abort();
}
}

// this function usage
abortAjax(xhr);