停止对象内的ajax调用

时间:2012-07-19 19:45:01

标签: jquery ajax object timeout

我有一个对象,我有一个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();

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

TNX

2 个答案:

答案 0 :(得分:0)

如果您的请求超时,由于超时,它会单独停止。 顺便说一下,你应该处理这个事件,所以请查看jQuery ajax文档中的timeout属性! http://api.jquery.com/jQuery.ajax/

答案 1 :(得分:0)

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