if(XHR.readyState == 4){//Ajax エンジン オブジェクトのメソッドとプロパティについては、私の他のブログ投稿を参照してください: http://www.cnblogs.com/hongfei/archive/ 2011/11 /29/2265377.html
if(XHR.status == 200){
var textHTML=XHR.responseText;
document.getElementById('checkbox').innerHTML=textHTML
}
}
}
コードの説明:
①まず、ajax エンジン オブジェクトを宣言する必要があります。市場シェアはそれぞれほぼ半分であるため、IE-->ActiveXObject; その他-->XMLHttpRequest の両方の側面を考慮する必要があります。彼女を関数 createXHR にカプセル化しました。
③index.html で指定した checkname() 関数は、「フォーカス」が失われたときにトリガーされます。では、ユーザーが入力した「ユーザー名」をどのように取得するのでしょうか?ここでは、js を使用して document.myform.user.value を簡単にキャプチャできます (フォームと入力に名前を付けた理由がわかりました。このステップは、フローチャートの「入力されたコンテンツを取得する」に相当します)。興味のあるブロガーは、それを試してみてください。 createXHR() の前の行にあるコード (alert(username)) を編集し、キャプチャされたユーザー名をポップアップ表示してみてください。
④Ajax エンジンにはいくつかのメソッドと属性があります (私の他のブログ投稿を参照してください: 図を見て理解してください: 通常の対話モードと Ajax 対話モードの違い) それを使用する前に、まず関数 craateXHR を呼び出す必要があります。 ajax オブジェクトを作成します
⑤ajax オブジェクトでは、open()、onreadystatechange、send() の 3 つのメソッドが必須です。
リクエストをサーバーに送信するには、open() メソッドと send() メソッドを使用します。
open() メソッドの最初のパラメータは、送信に GET または POST を使用することを示します。 。 。 。 。 。
open() メソッドの 2 番目のパラメータは、リクエストされる URL アドレスを示します (ここでは checkname.php ファイルをリクエストしています)。 open() メソッドの 3 番目のパラメータである async は、絶対アドレスまたは相対アドレスにすることができます。は非同期リクエストを使用するかどうかを示し、true は非同期リクエストを使用することを意味します。この場合、ajax と js によるサーバーの応答を待つ必要はありません。代わりに、①サーバーの応答を待ちながら他のスクリプトを実行します。②応答が返ってきたら処理します。準備ができて。一般に、一部の小さなリクエストでは、async=false も許容されますが、この時点では onreadystatechange 関数を記述しないでください。
onreadystatechange イベント: このイベントは、ajax 属性の readState が変更されるとトリガーされます。このイベントでは、サーバーの応答を処理する準備ができたとき (つまり、readyState=4 および status=200 のとき)、サーバーに実行させるタスクを指定します。ここでは、データベースから取得される結果が次のようになるよう指定します。 id「checkbox」のspanタグ内に出力します。
⑥checkname.php を通じてデータベースにクエリを実行すると、クエリ結果 (つまり、フローチャートの「クエリ データベース」に相当するサーバーの応答) が取得されます。この時点では、データはまだ ajax エンジン内にあります。サーバーから応答を取得する必要があります。XMLHttpRequest オブジェクトの responseText または responseXML 属性を使用し、サーバー応答から返されたデータを、DOM 属性を介して id="checkbox" を持つ spam タグの値に設定する必要があります。 innerHTML 注: ajax を使用してメールボックスが存在するかどうかを監視するのには理由があります。この時点で、onblur イベントを onfocus に変更する必要があります。イベント。
オリジナルの cnblogs Xiaofei
ソース コード パッケージのダウンロード /201112/yuanma/checkname_php.rar
http://www.bkjia.com/PHPjc/324720.html
www.bkjia.comtruehttp://www.bkjia.com/PHPjc/324720.html技術記事今回は「Ajax技術を利用してユーザー名が存在するかどうかを検出する」例を紹介します。 Ajax テクノロジーを使用してユーザー名が存在するかどうかを検出する原理フローチャート: 最終結果のスクリーンショット: コードをコピーします...