チュートリアル|例|ajax
AJAX は、間違いなく 2005 年に最も注目されている Web 開発テクノロジの 1 つです。もちろん、この功績は Google から切り離すことはできません。私は普通の開発者であり、AJAX をあまり使用しませんが、AJAX の使用経験を簡単に共有します。 (この記事は、ユーザーが JavaScript、HTML、CSS などの基本的な Web 開発能力をすでに持っていることを前提としています)
【AJAX 入門】
Ajax は、クライアント側のスクリプトを使用してやり取りする Web アプリケーション開発手法です。 Web サーバーとのデータ。再カットのための対話プロセスを中断することなく、Web ページを動的に更新できます。 Ajax を使用すると、ユーザーはネイティブ デスクトップ アプリケーションに近い、直接的で可用性が高く、よりリッチで動的な Web ユーザー インターフェイスを作成できます。
非同期 JavaScript および XML (AJAX) は新しいテクノロジではありませんが、ルック アンド フィールと Web を開発するために、カスケード スタイル シート (CSS)、JavaScript、XHTML、XML、Extensible Style Language Transformations (XSLT) などのいくつかの既存のテクノロジを使用しています。デスクトップ ソフトウェアと同様に動作するアプリケーション ソフトウェア。
[AJAX 実行原理]
Ajax インタラクションは、XMLHttpRequest と呼ばれる JavaScript オブジェクトから始まります。名前が示すように、クライアント側スクリプトが HTTP リクエストを実行できるようにし、XML 形式のサーバー応答を解析します。 Ajax 処理の最初のステップは、XMLHttpRequest インスタンスを作成することです。 HTTP メソッド (GET または POST) を使用してリクエストを処理し、ターゲット URL を XMLHttpRequest オブジェクトに設定します。
HTTP リクエストを送信するときは、ブラウザがハングしてサーバーからの応答を待つのではなく、ページを介してユーザーのインターフェイスの操作に応答し続け、実際にサーバーの応答が返されたら処理する必要があります。到着。これを実現するには、XMLHttpRequest にコールバック関数を登録し、XMLHttpRequest リクエストを非同期にディスパッチします。制御はすぐにブラウザに返され、サーバーの応答が到着するとコールバック関数が呼び出されます。
【AJAXの実践】
1. Ajaxを初期化する
Ajaxは実際にXMLHttpRequestオブジェクトを呼び出すので、まずこのオブジェクトを呼び出す必要があり、Ajaxを初期化する関数を構築します:
/** * xmlhttp オブジェクトを初期化します */ function InitAjax() { var ajax=false; try { ajax = new ActiveXObject("Msxml2.XMLHTTP") { try { ajax = new ActiveXObject ("Microsoft. } return ajax; } このコードは XMLHTTP コンポーネントを呼び出しているため、IE ブラウザでのみ使用できると思われるかもしれません。いいえ、私のテストの後、Firefox も使用できます。使用済み。 そして、Ajax 操作を実行する前に、まず InitAjax() 関数を呼び出して Ajax オブジェクトをインスタンス化する必要があります。 | 2. Get メソッドを使用します
同時に、対応する JavaScript 関数が構築されます: |
//Ajaxを必要とするURLアドレス var url = "/show.php?id="+ newsID; //ニュース表示レイヤーの位置を取得します var show = document.getElementById("show_news") //Ajaxオブジェクトをインスタンス化します var ajax = InitAjax() ; //Getメソッドを使ってリクエストを行う ajax.open("GET", url, true) //実行ステータスを取得する ajax.onreadystatechange = function() { //If実行ステータスが正常であれば、返されたコンテンツは上で指定したレイヤーに割り当てられます if (ajax.readyState == 4 && ajax.status == 200) { show.innerHTML = ajax.responseText } } / /空の送信 ajax.send( null);
3. POSTメソッドを使う
上記フォームではターゲット等の情報を送信する必要はなく、送信ボタンの種類もボタンのみなので全ての操作が可能であることが分かります。 onClick イベントの saveUserInfo() 関数が実行されます。この関数を説明しましょう:
アップロードされたPHPファイルを処理しています:upload.php
|