在IE8中解析JSON响应对象
我正在使用qq uploader来处理Django中的文件上传。在现代浏览器,比如Firefox和Chrome中,这个功能运行得很好。我也在努力让它在IE8中正常工作,已经取得了一些进展。我的问题是,当我上传一个文件并从服务器收到一个JSON响应时,响应的内容看起来是这样的:
{"success":true,"url":"/media/campaigns/20111118162942_home_cooking_win_01.png"}
我的代码是这样的:
onComplete:function(id, fileName, responseJSON) {
alert(responseJSON['url']);
}
我在Firefox和Chrome中成功加载了url
属性,但在IE8中却没有成功。它在IE8中显示的是undefined
的值。我尝试了不同的方法,但就是无法获取到实际的值。我该怎么做呢?
1 个回答
3
我在服务器端尝试了不同的文件类型设置。使用 application/json
时,IE浏览器会把响应当成文件下载,而使用 'text/plain' 则会让响应内容被包裹在 <pre></pre>
标签里。后来我试了 text/html
,结果响应内容被正确解析了,这样我就能获取到里面的值了。