ajax调用返回的jqXHR对象

成功事件或错误事件都会得到返回的jqXHR对象,但我只能在错误事件中访问jqXHR对象。


    $.ajax({

       type: 'POST',

       url:'https://fakeurl',

       data: formData,

       contentType: 'application/x-www-form-urlencoded',                     

       dataType: 'json',

       success: function(textStatus, jqXHR) {

           alert('textStatus: ' + textStatus + ' jqXHR.status: ' + jqXHR.status);

     },error: function(jqXHR) {

       console.log('jqXHR.status: ' + jqXHR.status);

     }

   });

错误事件的输出得到 jqXHR.status: 0。成功事件的输出是 textStatus: [object Object] jqXHR.status: undefined。


RISEBY
浏览 230回答 2
2回答

茅侃侃

来自 jQuery ajax文档:成功类型:函数(任何数据,字符串 textStatus,jqXHR jqXHR) ...因此,如果要访问回调中的jqXHR对象,则success需要定义三个参数以供函数接受,如下所示:success: function(data, textStatus, jqXHR) {           alert('data: ' + data + 'textStatus: ' + textStatus + ' jqXHR.status: ' + jqXHR.status);

倚天杖

如果要取回提交的数据,success 函数的第一个参数是提交的数据,第二个参数是 textStatus,第三个参数是 jqXHR,它具有响应对象的所有属性$.ajax({   type: 'POST',   url:'https://fakeURL',   data: formData,   contentType: 'application/x-www-form-urlencoded',   dataType: 'json',   success: function(data, textStatus, jqXHR) {      alert('textStatus: ' + textStatus + ' jqXHR: ' + jqXHR.status); },error: function(error) {   console.log('error.status: ' + error.status); }});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript