jQuery技术

jquery ajax get success not called; ajax调用返回200,但是没

字号+ 作者:H5之家 来源:H5之家 2015-10-05 15:18 我要评论( )

jquery ajax get success not called; ajax调用返回200,但是没有调用success的问题.使用了jquery里的ajax方法,通过get回来的结果并没有按预期的执行success回

管理后台不知道为啥出了点小bug,以前管用的一个功能突然不能用了,看了下数据接口是调用成功了,大周末的,又不好麻烦FE,只好自己看看了。

通过查看源代码发现,使用了jquery里的ajax方法,通过get回来的结果并没有按预期的执行success回调。

$.ajax({ url: '/antispammanage/filterSpecial/?kw='+encodeURIComponent(kw), type: 'get', dataType: 'json', success: function(data){ var d = JSON.parse(data.trim()); $('.producekw').val(d.kw); }

查看网络请求,接口是返回成功的。
然后对该方法添加了error回调,打印出返回信息,readystate=4,返回头是200,但是为啥就不success呢。

google了下后发现,原来问题出在返回信息的content-Type上,返回的不是json类型,但是ajax方法里指定了类型为json,所以ajax方法在解析json的时候出错了。解决办法有两个:
1.接口返回的header里指定content-Type为json,
2.ajax调用的时候,指定dataType为text,然后自己用JSON.parse进行解析。



 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Tab页界面,用jQuery及Ajax技术实现

    Tab页界面,用jQuery及Ajax技术实现

    2016-02-06 08:16

  • 我在学习ASP.NET AJAX,这个是不是过时了,微软不再更新了,是不

    我在学习ASP.NET AJAX,这个是不是过时了,微软不再更新了,是不

    2016-01-18 18:14

  • Thinkphp 结合Jquery Ajax技术实现无刷新查询

    Thinkphp 结合Jquery Ajax技术实现无刷新查询

    2016-01-15 13:09

  • jQuery框架AJAX技术7

    jQuery框架AJAX技术7

    2016-01-14 14:23

网友点评
a