(JS)Ajaxローカルリフレッシュ技術
5571 ワード
1.Ajax Ajaxとは、すべて「Asynchronous JavaScript and XML」(非同期JavaScriptとXML)と呼ばれ、インタラクティブなWebアプリケーションを作成するWeb開発技術を指す.ユーザー体験を改善するために使用されます.その本質はXMLHttpRequestオブジェクトを用いて非同期のサーバのように要求を送信し、サーバは完全なページではなく一部のデータを返し、jsでページの一部の内容を変更し、ページのローカルリフレッシュを実現することである.2.XMLHttpRequestオブジェクトの取得
3.要求を作成する2つの方法
4.リターン関数の設定ここではXMLHttpRequestオブジェクトの2つのプロパティreadStateとstatus readStateについて説明します.要求のステータス「0」要求は初期化されていません.「1」サーバ接続が確立されています.「2」要求を送信しています.「2」要求は受信されています.「3」要求は完了しています.「処理中です.」「4」要求は完了しています.データ受信成功status:サーバが返すhttp要求応答値(ステータスコード)ここではいくつかの一般的なステータスコードを紹介する:200:要求成功202を示す:要求が受信されたことを示すが、処理が完了していない400:エラーを示す要求404:リソースが見つからないことを示す500:内部サーバエラー5を示す.要求送信要求送信時にXMLHttpRequestオブジェクトを呼び出すsend()メソッドget要求時send()メソッドパラメータが空のpost要求時send(String)メソッドにおける書き込み要求のパラメータ6である.非同期リクエストを送信するには①XMLHttpRequestオブジェクトの取得②リクエストの作成(XMLHttpRequestオブジェクトを呼び出すopenメソッド)③コールバック関数の設定(XMLHttpRequestオブジェクトのonreadystatechangeプロパティに応答関数を設定)主にサーバから返されたデータに基づいてページ内容を変更するために使用される④送信要求(XMLHttpRequestオブジェクトを呼び出すsendメソッド)の簡単な例:
function getXhr() {
var xhr = null;
if(window.XMLHttpRequest) {
//IE6 、
xhr = new XMLHttpRequest();
} else {
//IE6
xhr = new ActiveXObject('Microsoft.XMLHTTP');
}
return xhr;
}
3.要求を作成する2つの方法
//get
xhr.open("get", "login.do?flag=100", true);
//post
xhr.open("post", "login.do", true);
// , post http
// "application/x-www-from-urlencoden" ,
// , multipart/form-data
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
4.リターン関数の設定ここではXMLHttpRequestオブジェクトの2つのプロパティreadStateとstatus readStateについて説明します.要求のステータス「0」要求は初期化されていません.「1」サーバ接続が確立されています.「2」要求を送信しています.「2」要求は受信されています.「3」要求は完了しています.「処理中です.」「4」要求は完了しています.データ受信成功status:サーバが返すhttp要求応答値(ステータスコード)ここではいくつかの一般的なステータスコードを紹介する:200:要求成功202を示す:要求が受信されたことを示すが、処理が完了していない400:エラーを示す要求404:リソースが見つからないことを示す500:内部サーバエラー5を示す.要求送信要求送信時にXMLHttpRequestオブジェクトを呼び出すsend()メソッドget要求時send()メソッドパラメータが空のpost要求時send(String)メソッドにおける書き込み要求のパラメータ6である.非同期リクエストを送信するには①XMLHttpRequestオブジェクトの取得②リクエストの作成(XMLHttpRequestオブジェクトを呼び出すopenメソッド)③コールバック関数の設定(XMLHttpRequestオブジェクトのonreadystatechangeプロパティに応答関数を設定)主にサーバから返されたデータに基づいてページ内容を変更するために使用される④送信要求(XMLHttpRequestオブジェクトを呼び出すsendメソッド)の簡単な例:
// XMLHttpRequest
function getXhr() {
var xhr = null;
if(window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
} else {
xhr = new ActiveXObject('Microsoft.XMLHTTP');
}
return xhr;
}
//get
function send1() {
var xhr = getXhr();
xhr.open("get", "login.do?flag=100", true);
//
xhr.onreadystatechange = function() {
if(xhr.readyState == 4 && xhr.status == 200) {
var result = xhr.responseText;
//
document.getElementById("info1").innerText = result;
}
};
xhr.send();
}
//post
function send2() {
var xhr = getXhr();
xhr.open("post", "login.do", true);
// http
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if(xhr.readyState == 4 && xhr.status == 200) {
document.getElementById("info2").innerText = xhr.responseText;
}
};
//
xhr.send("flag=200");
}