AJAX ASP 例
- 前のページ AJAX PHP
- 次のページ AJAX データベース
AJAXはよりインタラクティブなアプリケーションを作成するために使用されます。
AJAX ASP 例
以下の例では、ユーザーが入力フィールドに文字を入力したときに、ウェブページがウェブサーバーとどのように通信するかを示しています:
実例
以下の入力フィールドにアルファベット A-Z を入力してください:
名前:
検索提案:
例の説明
上記の例では、ユーザーが入力フィールドに文字を入力したときに、"showHint()" という名前の関数が実行されます。
この関数は onkeyup イベントでトリガーされます。
以下は HTML コードです:
実例
<html> <head> <script> function showHint(str) { if (str.length == 0) { document.getElementById("txtHint").innerHTML = ""; return; } else { var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("txtHint").innerHTML = this.responseText; } }; xmlhttp.open("GET", "gethint.asp?q=" + str, true); xmlhttp.send(); } } </script> </head> <body> <p><b>以下の入力フィールドにアルファベット A-Z を入力してください:</b></p> <form> 名前:<input type="text" onkeyup="showHint(this.value)"> </form> <p>検索提案:<span id="txtHint"></span></p> </body> </html>
コード説明:
まず、入力フィールドが空かどうかをチェックします(str.length == 0
);もしそうであれば、txtHint プレースホルダーの内容をクリアし、関数を終了します。
ただし、入力フィールドが空でない場合、以下の手順を実行します:
- XMLHttpRequest オブジェクトを作成します
- サーバーからの応答が準備でき次第実行される関数を作成します
- サーバー上の ASP ファイル(gethint.asp)にリクエストを送信します
- gethint.asp に q パラメータを追加してください
- str 変数が入力フィールドの内容を保存しています
ASP ファイル - "gethint.asp"
この ASP ファイルは名前の配列をチェックし、ブラウザに対応する名前を返します:
<% response.expires=-1 dim a(32) 名前を配列に詰める a(1)="Ava" a(2)="Brielle" a(3)="Caroline" a(4)="Diana" a(5)="Elise" a(6)="Fiona" a(7)="Grace" a(8)="Hannah" a(9)="Ileana" a(10)="Jane" a(11)="Kathryn" a(12)="Laura" a(13)="Millie" a(14)="Nancy" a(15)="Opal" a(16)="Petty" a(17)="Queenie" a(18)="Rose" a(19)="Shirley" a(20)="Tiffany" a(21)="Ursula" a(22)="Victoria" a(23)="Wendy" a(24)="Xenia" a(25)="Yvette" a(26)="Zoe" a(27)="Angell" a(28)="Adele" a(29)="Beatty" a(30)="Carlton" a(31)="Elisabeth" a(32)="Violet" 「URLからqパラメータを取得する q=ucase(request.querystring("q")) 「hintのすべてを配列に表示し、qの長さが0以上であるか確認する if len(q)>0 then hint="" for i=1 to 30 if q=ucase(mid(a(i),1,len(q))) then if hint="" then hint=a(i) else hint=hint & " , " & a(i) end if end if 次へ end if 「hintが見つからない場合、"no suggestion"を表示するか、正しい値を表示する if hint="" then response.write("no suggestion") else response.write(hint) end if %>
- 前のページ AJAX PHP
- 次のページ AJAX データベース