2

我有一个将 ajax 与prototype.js ( Ajax.Updater) 结合使用的Web 应用程序。

new Ajax.Updater('someID','/some/url',
    {
        asynchronous:true,
        evalScripts:true,
        parameters:Form.serialize(Event.element(event).form),
        requestHeaders:['X-Update', 'someID']
    }
);

一些(不是全部)IE9 用户会遇到一个奇怪的现象。

  • UserAgent正常(非 ajax)HTTP 请求表示浏览器是 IE9,不在兼容性视图中。
  • UserAgentajax HTTP requests 表示浏览器是 IE7(IE9 的 Compatibility View)。

我想强制浏览器不要在 ajax HTTP 请求中使用兼容性视图,但是 html 已经有一个meta标签 : <meta http-equiv="X-UA-Compatible" content="IE=edge">

有谁知道原因或解决方法?

4

1 回答 1

3

这是一个可能的解决方案 - 但尚未完全研究 - 尝试设置

Header set X-UA-Compatible "IE=edge"

在您的httpd.conf.htaccess文件中 - 这会将 X-UA-Compatible 标头添加到来自 Apache 的所有响应中,以强制 IE 不使用兼容模式

于 2012-12-06T05:11:54.757 回答