IE8 jquery json响应触发器下载

时间:2013-10-31 22:35:30

标签: javascript jquery ajax internet-explorer internet-explorer-8

我希望IE8能够使用以下jQuery返回ajax请求为json:

$.ajax({
        url: formAction,
        type: 'post',
        dataType: 'json',
        data: form,
        success: function(data) {
            closeBlocker();
            if (data.count != 0) {
                $('#divid').toggle('slow');
            } else {
                $("#anotherdiv").css('display', 'none');
            }
            processSearchResult(target, data);
            reloadMap(data);
        }
});

在所有其他浏览器中,这会触发对提取数据的调用。但是,在IE8中,这会弹出一个对话框,询问用户是否要下载文件。它看起来像这样:

enter image description here

我看到this post但未能正确更改ContentType。

如何在不影响其他浏览器的情况下在IE8中执行相同的操作?谢谢你的想法!

2 个答案:

答案 0 :(得分:1)

我猜它与MIME type有关。

您必须告诉浏览器将其视为text / html。然后它不会尝试下载它,而是将其显示为文本。

为此,您可以在标题中发送Content-type = "text/html"

答案 1 :(得分:0)

这可能会解决您的问题

IE8 treats json response as file and tries to download it

当我尝试从其他域执行ajax调用时遇到了同样的问题,我使用我的URL引入了代理并且它已得到修复。

希望它有所帮助。