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

用$.ajax时error函数被触发,但是里面有返回的数据.

用$.ajax时error函数被触发,但是里面有返回的数据.

qq_杀意隆_0 2018-02-10 15:18:50
                  $.ajax({                          url:'http://localhost/logIn',                                                    type:'post',                          data:$('#form2').serialize(),                          success: function(data){                              console.log('success!');                              console.log(data);                          },                          error: function(data){                             console.log('error!');                             console.log(data);                          },                                               });既然error了,为何返回的对象的responseText属性有正确的json数据?
查看完整描述

3 回答

已采纳
?
纯情掉了一地

TA贡献4条经验 获得超5个赞

说明请求成功了。。但是没有解析成功。。这里考虑是parsererror(解析错误)。

error方法有以下三个参数:XMLHttpRequest 对象、错误信息、(可选)捕获的异常对象。

所以不论解析是否成功,只要请求成功,就会返回XMLHttpRequest对象。。

如果发生了错误,错误信息(第二个参数)除了得到 null 之外,还可能是 "timeout", "error", "notmodified" 和 "parsererror"。。。

建议你也看一下文档吧。。w3c里面就很详细了 ,解决了吗 ,有什么收获分享下吧

查看完整回答
反对 回复 2018-02-11
点击展开后面1
?
牛奶老哥哥

TA贡献204条经验 获得超92个赞

你服务端怎么写的 ? responseText 值里面两个双引号的格式不对吧

查看完整回答
反对 回复 2018-02-11
?
纯情掉了一地

TA贡献4条经验 获得超5个赞

             $.ajax({

                         url:'http://localhost/logIn',

                         type:'post',

                         data:$('#form2').serialize(),

                         success: function(data){

                             console.log('success!');

                             console.log(data);

                         },

                         error: function(data){

                           throw new Error(‘自定义信息’)

                            console.log(data);

                         },       

                    });

查看完整回答
反对 回复 2018-02-11
?
产品经理不是经理

TA贡献481条经验 获得超143个赞

返回错误信息啊,可以用来告诉你哪儿出错了。

查看完整回答
反对 回复 2018-02-10
点击展开后面1
  • 3 回答
  • 0 关注
  • 2591 浏览

添加回答

举报

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