XMLHttpRequestオブジェクトのプロパティとメソッド
2816 ワード
ajaxの不足
1.XMLHttpRequestオブジェクトに対する各ブラウザのサポート不足(互換性の問題)
2.ブラウザの前進、後退機能を破壊する.
3.検索エンジンのサポートが不足しています.
4.デバッグツールのサポートが不足しています.
XMLHttpRequestオブジェクトのプロパティとメソッド
1.readyStateプロパティ
ステータス:0は初期化されていません.
1は送信の準備をします.
2送信されましたが、まだ応答がありません.
3受入中
4受信完了
2.responseText属性
クライアントが受信したHTTP応答を含むテキストコンテンツ.
readyState=4の場合、responseTextには完全な応答情報が含まれます.
readyState=3の場合、responseTextには不完全な応答情報が含まれます.
readyState<3の場合、responseTextは空の文字列です.
3.responseXMLプロパティ
readyState=4であり、応答ヘッダのContent-TypeのMIMEタイプがXML(text/xmlまたはアプリケーション/xml)である場合、この属性は値があり、XMLドキュメントとして解析される.
その他のケースはnullであり、返送されたXMLドキュメントが不良または未完了の応答返送を含む.
4.status及びstatusText属性(http状態コード及びコードテキストを説明する)
readyState>2でなければアクセスできません.そうしないと、例外が発生します.
5.onreadystatechangeイベント
readyStateプロパティが変更されると、コールバック関数をトリガーするイベントがトリガーされます.
6.openメソッド
Open(method,uri,async,username,password)は初期化作業に用いられる
戻り値:send()メソッドを含むオブジェクトを取得します.
method:必須です.GET,POST,PUT…などのHTTPメソッドを指定します.規定通りに大文字でなければなりません.
uri:サーバに対する対応するURIの送信を要求する.自動的に絶対アドレスに解析されます.
async:リクエストが非同期かどうか、デフォルトはtrueです.
Openを呼び出すとreadystateステータスは1になります.
7.sendメソッド
Openメソッドを呼び出すとsend()メソッドを呼び出してリクエストを送信できます.
Openでasync=trueの場合、send()メソッドが呼び出されるとすぐに返されます.そうしないと、リクエストが返されるまで中断されます.
send(data)
data:オプションです.ここに疑問があります.
8.abort()メソッド
この方法は、HttpRequestリクエストまたはHttpResponseの受信を一時停止し、XMLHttpRequestのステータスを初期化に設定することができる.
9.setRequestHeader(header,value)メソッド
この方法は、リクエストのヘッダ情報を設定するために使用されます.Open()を呼び出した後にこのメソッドを呼び出します.そうでないと異常が発生します.
10.getResponseHeader()メソッド
readystate>2の場合、この方法は応答のヘッダ情報を取得するために使用される.そうでなければ、空の文字列が返されます.
getAllResponseHeaders()メソッドは、すべてのHttpResponseヘッダ情報を返します.
1.XMLHttpRequestオブジェクトに対する各ブラウザのサポート不足(互換性の問題)
2.ブラウザの前進、後退機能を破壊する.
3.検索エンジンのサポートが不足しています.
4.デバッグツールのサポートが不足しています.
XMLHttpRequestオブジェクトのプロパティとメソッド
1.readyStateプロパティ
ステータス:0は初期化されていません.
1は送信の準備をします.
2送信されましたが、まだ応答がありません.
3受入中
4受信完了
2.responseText属性
クライアントが受信したHTTP応答を含むテキストコンテンツ.
readyState=4の場合、responseTextには完全な応答情報が含まれます.
readyState=3の場合、responseTextには不完全な応答情報が含まれます.
readyState<3の場合、responseTextは空の文字列です.
3.responseXMLプロパティ
readyState=4であり、応答ヘッダのContent-TypeのMIMEタイプがXML(text/xmlまたはアプリケーション/xml)である場合、この属性は値があり、XMLドキュメントとして解析される.
その他のケースはnullであり、返送されたXMLドキュメントが不良または未完了の応答返送を含む.
4.status及びstatusText属性(http状態コード及びコードテキストを説明する)
readyState>2でなければアクセスできません.そうしないと、例外が発生します.
5.onreadystatechangeイベント
readyStateプロパティが変更されると、コールバック関数をトリガーするイベントがトリガーされます.
6.openメソッド
Open(method,uri,async,username,password)は初期化作業に用いられる
戻り値:send()メソッドを含むオブジェクトを取得します.
method:必須です.GET,POST,PUT…などのHTTPメソッドを指定します.規定通りに大文字でなければなりません.
uri:サーバに対する対応するURIの送信を要求する.自動的に絶対アドレスに解析されます.
async:リクエストが非同期かどうか、デフォルトはtrueです.
Openを呼び出すとreadystateステータスは1になります.
7.sendメソッド
Openメソッドを呼び出すとsend()メソッドを呼び出してリクエストを送信できます.
Openでasync=trueの場合、send()メソッドが呼び出されるとすぐに返されます.そうしないと、リクエストが返されるまで中断されます.
send(data)
data:オプションです.ここに疑問があります.
8.abort()メソッド
この方法は、HttpRequestリクエストまたはHttpResponseの受信を一時停止し、XMLHttpRequestのステータスを初期化に設定することができる.
9.setRequestHeader(header,value)メソッド
この方法は、リクエストのヘッダ情報を設定するために使用されます.Open()を呼び出した後にこのメソッドを呼び出します.そうでないと異常が発生します.
10.getResponseHeader()メソッド
readystate>2の場合、この方法は応答のヘッダ情報を取得するために使用される.そうでなければ、空の文字列が返されます.
getAllResponseHeaders()メソッドは、すべてのHttpResponseヘッダ情報を返します.
<script type="javascript/text">
var xmlHttp
// IE
if(window.ActiveXObject){
try{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
xmlHttp=false;
}
}
else{
try{
xmlHttp=new XMLHttpRequest();
}catch(e){
xmlHttp=false;
}
}
if(xmlHttp.readyState==4||xmlHttp.readyState==0){
xmlHttp.open("GET", "test.php?"content="+content,true);
//
xmlHttp.onreadystatechange=recall();
xmlHttp.send(null);
}
function recall(){
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
xmlResponse = xmlHttp.responseXML;
//xml
myXml = xmlResponse.documnetElement;
content = myXml.firstChild.data;
//
}
}else{
alert(xmlHttp.statusText);
}
}
</script>