在jquery中为ajax()设置超时

来源:互联网 发布:王思聪双性恋 知乎 编辑:程序博客网 时间:2024/05/29 18:16

在jquery中为ajax()设置超时

function request(url, data, success_callback,error_callback) {    console.log("url:"+url);    var xhr = $.ajax({        //提交数据的类型 POST GET        type: "POST",        //提交的网址        url: url,        //提交的数据        data: data,        // 设置超时的时间20s        timeout:20000,        //返回数据的格式        datatype: "json", //"xml", "html", "script", "json", "jsonp", "text".        xhrFields: {            withCredentials: true        },        crossDomain: true,        //在请求之前调用的函数        beforeSend: function () {        },        //成功返回之后调用的函数                     success: function (response) {            handleResponse(response, success_callback,error_callback);        },        //调用执行后调用的函数        complete: function (XMLHttpRequest, textStatus) {            if(textStatus == 'timeout'){                if (error_callback != null && error_callback != "") {                                error_callback();                };            }        },        //调用出错执行的函数        error: function () {            //请求出错处理            console.log("error");        }    });}
timeout:20000,即设置超时时间是20s,
下面这段代码是处理超时的处理,这里你可以写自己要处理的东西,complete不管请求成功还是失败,都会执行

       //调用执行后调用的函数        complete: function (XMLHttpRequest, textStatus) {            if(textStatus == 'timeout'){                if (error_callback != null && error_callback != "") {                                error_callback();                };            }        }


原创粉丝点击