jquery ajax请求代码:$.ajax({url:'action',type:'post',data:{},async:false,cache:false,dataType:'json',suc
jquery ajax请求代码:
$.ajax({ url:'action', type:'post', data:{}, async:false, cache:false, dataType:'json', success:function(data){ alert(data) } });
非常简单的一段代码在chrome下可以正常接到返回的data值,却在ie8下提示下载文件。F12 debug跟踪,查看请求和响应的详细信息。
- request header:Accept application/json, text/javascript, /; q=0.01
- response header:Content-Type application/json; charset=utf-8
请求和响应的头信息都正确。那为什么ie下没有走success方法呢?无意中看到响应正文是一个非json的字符串,会不会跟这个有关系?改代码从后台返回一个标准json串,终于ie下可以接到返回值data了。
总结:响应头Content-Type要与响应正文内容保持一致。