【问题标题】:IE8 jquery json response triggers downloadIE8 jquery json响应触发器下载
【发布时间】:2013-10-31 22:35:30
【问题描述】:

我希望 IE8 可以使用以下将 ajax 请求返回为 json 的 jquery:

$.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 中,这会导致弹出一个对话框,询问用户是否要下载文件。它看起来像这样:

我看到了this post,但无法正确更改 ContentType。

如何在不影响其他浏览器的情况下在 IE8 中做同样的事情?谢谢你的想法!

【问题讨论】:

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


    【解决方案1】:

    我猜它与MIME type 有关。

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

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

    【讨论】:

      【解决方案2】:

      这可能会解决您的问题

      IE8 treats json response as file and tries to download it

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

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 2011-07-02
        • 2014-07-31
        • 1970-01-01
        • 2013-05-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-24
        • 1970-01-01
        相关资源
        最近更新 更多