分享

jquery ajax请求 发生canceled状态时的处理

 java_laq小馆 2014-10-09

jquery中断(取消/abort)ajax请求

如果一个ajax请求过长,你可能会有取消之前发起的一次请求的需要。这里介绍jquery中如何实现。其实jquery发起一个ajax请求后会返回一个jqXHR对象,你随后可对该对象进行操作,包括abort中断操作。示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var jqXhr = $.ajax({
            url: 'some ajax url',
            success: function(data) {
                //do something
            },
            error:function(data,error){
                console.log(error);
            },
            complete:function(){
                jqXhr = null;
            }
        });
 setTimeout(function(){
    if(jqXhr && jqXhr.readyState!= 4){
        jqXhr.about();
    }
 },50);

取消成功的话,ajax请求参数中的error函数会被触发。console.log(error)一句将打印出“abort”字样。
注意:jquery 1.5之前的版本需要将上述代码中的readyState改成小写的readystate。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多