0

我正在尝试修补一些在 Chrome 中不起作用的 AJAX。这不是我的脚本,我宁愿不将整个东西转换为 jQuery。

xmlhttp.open("GET", query, true);
xmlhttp.onreadystatechange = function () {
    if (xmlhttp.readyState == 4) {
        console.log(xmlhttp.responseText);
    }
}
xmlhttp.send();

这实际上在使用 Internet Explorer 时会在日志中输出一些内容,但是在 (Ch)rome 中我得到一个空字符串,因为 JS 调试器告诉我GET失败了。目标 URL 是正确的,因为它在 IE 中工作,但它是某种 ASP.NET 脚本,我不太熟悉它的内部工作原理(我在这里做 HTML、CSS 和 JavaScript)。

为什么允许 IE 从目标中检索信息,但不允许 Chrome?当使用 Chrome 时xmlhttpXMLHttpRequestIE 会得到某种ActiveXObject.

编辑。我在这里找到了一些可能的解决方案。Response.Close(),没有异步或指定/空数据类型。虽然是 jQuery。

编辑#2。 Chrome 对我的标题说了什么。

4

2 回答 2

3

您可以通过在 Chrome 的地址栏中输入网址来查看网址吗?您的浏览器配置可能只是阻止 Chrome 看到服务器。

另一种可能性是您被同源策略所困扰-您访问的网址与页面在同一个域上吗?

于 2012-08-15T10:49:26.873 回答
0

好的,所以我已经解决了。Chrome 显然不喜欢Response.Close()在请求页面的末尾添加。更改为Response.End()修复它。谢谢您的帮助!

我还用一行 jQuery 替换了那个 JavaScript。

于 2012-08-21T06:27:23.303 回答