0

我的代码很简单。

function useXMLHttpRequest() {
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "test.ashx", false);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
xmlhttp.onReadyStateChange = function () {
    alert("ss");
};
xmlhttp.send("i=5");
alert(xmlhttp.responseText);

}

当我调用 useXMLHttpRequest.Yes 时,它会提醒 xmlhttp.responseText 的值。但它不会提醒(“ss”)。在 IE9 和 Firefox 中。谁能告诉我穿的是什么?

4

2 回答 2

2

JavaScript(以及我知道的所有其他语言)区分大小写,因此onreadystatechangeonReadyStateChange.

试试这个:

xmlhttp.onreadystatechange = function() {
    alert("ss");
};
于 2012-10-26T05:33:25.037 回答
0

你有

xmlhttp.open("POST", "test.ashx", false);

第三个参数是false,表示您使用的是同步请求。对于此类请求,onreadystatechange 不起作用,不鼓励使用它。无论如何,您的请求在完成之前不会更进一步,因此在正常工作alert(xmlhttp.responseText);后立即xmlhttp.send("i=5");无需处理请求状态更改事件。

在此处此处查看更多信息。

于 2012-10-26T05:37:25.457 回答