0

我有一个对象,我有一个 ajax 请求:

var newsrecentObj = {
    init: function() {
        var self = this;

        self.fetch().done( function(data) {
            console.dir( data );
        } ).error( function(data) {
            // stop ajax call
        } );
    },

    fetch: function() {
        var self = this;

        return $.ajax({
            url: 'http://url.to/api',
            timeout: 5000,
            dataType: 'jsonp'
        });
    }
}

var newsrecent = Object.create();
newsrecent.init();

我想在发生超时时停止请求。但我该怎么做呢?

肿瘤坏死因子

4

2 回答 2

0

如果您的请求超时,它会因为超时而单独停止。
顺便说一句,您应该处理此事件,因此请查看 jQuery ajax 文档中的 timeout 属性!
http://api.jquery.com/jQuery.ajax/

于 2012-07-19T19:50:40.207 回答
0

如果您想停止 ajax 请求,您可以创建对 jqxhr 对象的引用,并调用 .abort 方法。

于 2012-07-19T19:53:13.527 回答