1.1 我的理解:
2 xmlHttp对象的成员。
2.1 属性
例子:xmlHttp.onreadystatechange = functionHandler;
function functionHandler() {
if(xmlHttp.readyState == 4) {
alert("当readyState状态为4时,弹出此窗口!!!");
}
}
//句柄只有方法名称,没有这对“()”括号。赋值时要注意理解。
0 (未初始化) |
对象已建立,但是尚未初始化(尚未调用open方法) |
1 (初始化) |
对象已建立,尚未调用send方法 |
2 (发送数据) |
send方法已调用,但是当前的状态及http头未知 |
3 (数据传送中) |
已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误, |
4 (完成) |
数据接收完毕,此时可以通过通过responseBody和responseText获取完整的回应数据 |
// xmlHttp は固定された方法で記述されているため、各ステップには状態の変更が伴います。ハンドラーは常に監視されており、対応するロジックを実行します。
コードの実行順序:
var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.3.0");
xmlHttpReq.open("GET", "http://localhost/test.xml", false);
xmlHttpReq.send();
alert(xmlHttpReq.responseText);
2.2 メソッド
新しい xmlHttp オブジェクトを作成すると、実際には http リクエストを作成します。
このメソッドはリクエストメソッドを指定します(GET/POST/PUT/PROPFIND)、 URL、非同期(デフォルトは true)、検証情報。
が非同期メソッド (true) を採用している場合、状態が変化したときに onreadystatechange 属性で指定されたコールバック関数が呼び出されます。
このメソッドの同期モードまたは非同期モードは、SynSyn パラメータによって異なります。 > = = false、Syn == の場合、このメソッドはリクエストが完了するかタイムアウトするまで待機してから戻ります。 tそうです、このメソッドはすぐに戻ります。