【发布时间】:2013-12-20 17:38:44
【问题描述】:
我试图使最简单的 AJAX 请求成为可能,由于某种原因(出乎意料地)它在 IE 中有效,但在 Chrome 中无效?
代码如下:
var x = new XMLHttpRequest();
x.open("GET","style.php",true);
x.send();
alert(x.responseText);
最后一行只是弹出一个空的“警报”窗口。
PHP 代码:
<?php
header("Content-Type: text/plain");
echo "HELLO"; ?>
有人建议我把 text/plain header 放在代码之前,没有用。 Chrome中的JS控制台显示状态为200,收到800B,所以脚本收到了响应,但是看不到?
非常感谢您
【问题讨论】:
-
因为它是异步的!
-
复制警报代码并将其粘贴到下一行,然后重试。 *大吃一惊*
alert(x.responseText);alert(x.responseText); -
@KevinB 唯一有效的原因是请求可以快速完成,所以当您完成单击“确定”到第一个警报时,请求已经完成并且 responseText 现在是可用的。但是,您并不真的希望您的代码依赖于方便的时间安排。
标签: javascript php jquery ajax google-chrome