ホームページ > ウェブフロントエンド > jsチュートリアル > xmlHttpオブジェクトのメソッドとプロパティの理解_基礎知識

xmlHttpオブジェクトのメソッドとプロパティの理解_基礎知識

WBOY
リリース: 2016-05-16 18:11:51
オリジナル
967 人が閲覧しました
1  客户端可以通过xmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用文档对象模型(DOM)处理回应。

1.1 我的理解:

  1. 用户的每次操作,都会有数据产生。
  2. 通过DOM或者JS编写对数据进行封装,或者浏览器自身对http协议的一些数据进行封装。
  3. 通过xmlHttp对象的一些方法,传入数据参数,向http服务器发送请求。
  4. 返回结果通过DOM进行处理。

2  xmlHttp对象的成员。

2.1 属性

  1. onreadystatechange:readyState属性值发生改变时,触发的事件处理句柄。

例子:xmlHttp.onreadystatechange = functionHandler;

   function functionHandler() {

if(xmlHttp.readyState == 4) {

alert("readyState状态为4时,弹出此窗口!!!");

}

  }

//句柄只有方法名称,没有这对“()”括号。赋值时要注意理解。

  1. readyState:这个属性表示状态;总共有五种状态:

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 メソッド

  1. open(メソッド、URL、Syn、ユーザー、パスワード);

新しい xmlHttp オブジェクトを作成すると、実際には http リクエストを作成します。

このメソッドはリクエストメソッドを指定します(GET/POST/PUT/PROPFIND) URL、非同期(デフォルトは true)、検証情報。

が非同期メソッド (true) を採用している場合、状態が変化したときに onreadystatechange 属性で指定されたコールバック関数が呼び出されます。

  1. send();

このメソッドの同期モードまたは非同期モードは、SynSyn パラメータによって異なります。 > = = falseSyn == の場合、このメソッドはリクエストが完了するかタイムアウトするまで待機してから戻ります。 tそうです、このメソッドはすぐに戻ります。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート