jquery ajax error函数和及其参数详细说明

通常error函数返回的参数有三个: function(jqXHR jqXHR, String textStatus, String errorThrown)。常见调用代码以下:javascript

$.ajax({
        url: '/Home/AjaxGetData',            
        success: function (data) {
            alert(data);
        },
        error: function (jqXHR, textStatus, errorThrown) {
            /*错误信息处理*/
        }
    });

这里对这三个参数作详细说明。java

第一个参数 jqXHR jqXHR:这里的jqXHR是一个jqXHR对象,在Jquery1.4和1.4版本以前返回的是XMLHttpRequest对象,1.5版本之后则开始使用jqXHR对象,该对象是一个超集,就是该对象不只包括XMLHttpRequest对象,还包含其余更多的详细属性和信息。jquery

这里主要有4个属性:ajax

  • readyState :当前状态,0-未初始化,1-正在载入,2-已经载入,3-数据进行交互,4-完成。
  • status  :返回的HTTP状态码,好比常见的404,500等错误代码。
  • statusText :对应状态码的错误信息,好比404错误信息是not found,500是Internal Server Error。
  • responseText :服务器响应返回的文本信息

第二个参数 String textStatus:返回的是字符串类型,表示返回的状态,根据服务器不一样的错误可能返回下面这些信息:"timeout"(超时), "error"(错误), "abort"(停止), "parsererror"(解析错误),还有可能返回空值。api


第三个参数 String errorThrown:也是字符串类型,表示服务器抛出返回的错误信息,若是产生的是HTTP错误,那么返回的信息就是HTTP状态码对应的错误信息,好比404的Not Found,500错误的Internal Server Error。服务器

示例代码:函数

$.ajax({
        url: '/AJAX请求的URL',            
        success: function (data) {
            alert(data);
        },
        error: function (jqXHR, textStatus, errorThrown) {
            /*弹出jqXHR对象的信息*/
            alert(jqXHR.responseText);
            alert(jqXHR.status);
            alert(jqXHR.readyState);
            alert(jqXHR.statusText);
            /*弹出其余两个参数的信息*/
            alert(textStatus);
            alert(errorThrown);
        }
    });

这里是官方的文档说明:url

相关文章
相关标签/搜索