2

这是我的简单 ajax 代码,适用于 FFX 和 Chrome,但不适用于 IE9。我厌倦了这个我无法表达的浏览器。这是我的jQuery代码:

   $.ajax({
                type: "GET",
                dataType: "xml",
                crossDomain: true,
                cache:false,
                url: "http://somedomain.net/folder/ap/connector.php"
            }).success(function (result, payPalresult) {
});

在 document.ready 和 connector.php 里面有

Access-Control-Allow-Origin *

当我签入提琴手时。现在此代码适用于 FFX 和 Chrome,但在 IE9 中从未进行过 ajax 调用

我什至有这个:

 $.support.cors = true;

在这一点上我有什么遗漏吗?我正在从本地主机发出 AJAX 请求

4

2 回答 2

3

jQuery 不支持 IE 的XDomainRequest对象,这是 IE9 用于 CORS 的。只有 IE10 使用XMLHttpRequest. XDomainRequest我相信您可以找到一个启用该对象的 jQuery 补丁/插件。更多信息(包括六个月前更新的补丁/插件的链接,所以相当新)在jQuery 网站上的这张票中。

于 2013-03-28T10:09:07.493 回答
0

如果它对 IE9 的解决方法有帮助,则无需使用 xdr(无论如何在受信任的站点区域中)并假定 CORS 为真且 crossDomain 为真。

进行 POST 时,不要序列化表单,而是从表单中提取您需要的所有数据,并将每个数据设置为 $ 数据容器中的名称:值对。然后它工作。

高温高压

于 2013-04-18T10:27:42.513 回答