为了账号安全,请及时绑定邮箱和手机立即绑定

ajax调用返回的jqXHR对象

ajax调用返回的jqXHR对象

RISEBY 2021-08-20 19:12:02
成功事件或错误事件都会得到返回的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。
查看完整描述

2 回答

?
茅侃侃

TA贡献1842条经验 获得超21个赞

来自 jQuery ajax文档:


成功


类型:函数(任何数据,字符串 textStatus,jqXHR jqXHR) ...


因此,如果要访问回调中的jqXHR对象,则success需要定义三个参数以供函数接受,如下所示:


success: function(data, textStatus, jqXHR) {

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


查看完整回答
反对 回复 2021-08-20
?
倚天杖

TA贡献1828条经验 获得超3个赞

如果要取回提交的数据,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);

 }

});


查看完整回答
反对 回复 2021-08-20
  • 2 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信