RS テクノロジーの具体例
前回の投稿では、RS の基本的な動作原理を紹介しました。明らかに、RS テクノロジーを
ウェブサイトのデザインに適用すると、多くの驚くべき効果が得られます (特に最大の利点は
ページを更新せずにサーバー側のコードを呼び出すことができること)。この機能があるからこそ、
従来の C/S モードのプログラムを書くのと同じようにデータベース内のデータを処理することができます (誰もがその実装方法を知りたいと思うはずです。具体的な例は、この壊れたプログラムをデバッグするのは、ほとんど疲れ果てました (笑)
前の説明から、RS テクノロジを使用するには、クライアントとサーバーが次の 2 つの条件を満たす必要があることがわかります。
1.クライアントは Java アプレット
2 をサポートするだけで済みます。サーバーは ASP をサポートするだけで済みます
言い換えると、RS テクノロジーはブラウザーから完全に独立しています (もちろんブラウザーは少なくとも Java
と JavaScript をサポートする必要があります)。IE で使用することも、完全に
NC で使用することもできます。これも、RDS テクノロジーと異なる重要な機能です。
RS テクノロジーを柔軟に使用する前に、まず問題を説明する必要があります。それは、前にも述べた「非同期呼び出し」
の問題です。ページ全体を更新せずにページの特定の部分のみを更新できるのは、まさに非同期呼び出しのためです。
この機能により、ページの閲覧中に入力したデータの合法性をチェックするようサーバーに要求できます (もちろん、これは一連の非常に複雑な合法性チェックになる可能性があります。たとえば、データを
変更する必要があります)ユーザーが入力したデータとデータベース内の既存データとの比較など。これはクライアント JS では解決できません)
その後、サーバーがチェック結果を返すと、対応する操作 (ダイアログ ボックスをポップアップ表示するなど) を実行できます。ユーザーに通知します
入力エラーなど)
非同期呼び出しの構文は次のとおりです:
RSExecute(serverURL, functionname, param_list)
最初のパラメーターは、呼び出したい ASP ページの完全な URL パスです
2 番目のパラメータは、呼び出したい関数の名前です
以下は、関数に必要な入力パラメータです
呼び出したい関数が 2 つの入力パラメータを必要とする場合は、次のように記述します:
RSExecute(serverURL, functionname, f_arg_1 , f_arg_2)
呼び出しを行うときの書き方は 2 つあります。 1 つは結果を返す呼び出しメソッドです。
objResult = RSExecute(serverURL, functionname, f_arg_1, f_arg_2); 2 つ目は結果を返さない呼び出しメソッドです。結果を返します:
RSExecute(url, func_name, f_arg_1, f_arg_2, CallbackFunction)
この呼び出しメソッドには特別な注意を払う必要があります
RS がサーバー上で呼び出しを完了すると、 、すぐにこの関数を呼び出し、結果をこの
関数 go に返します。
一般的な CallbackFunction 関数は次の構造を持つ必要があります:
function CallbackFunction(objResult) {
//独自の処理プロセス
}
唯一の入力パラメータ objResult は RS 呼び出しの戻り値です
このような状況を想定してみましょう:
ユーザーはブラウザにユーザーの電子メール アドレスを入力し、その後電子メール アドレス入力ボックスを離れます
ここで、ユーザーが入力したアドレスに基づいて RS が機能します。サーバーのデータベース内でユーザーが既に存在するかどうかを判断し、
結果をクライアントに返します。その後、クライアントで DHTML テクノロジを使用して、「ShowResult」という入力ボックスでユーザーに以前の入力を求めます
情報。
function CallbackFunc(objResult) {
// ユーザー情報のプロンプト
window[objResult.context].value = objResult.return_value;
}
RSExecute() は次のように呼び出す必要があります
RSExecute(serverURL, functionname, f_arg_1, CallbackFunc, " ShowResult");
もうだめ、これ以上、上記は冗長です。皆さん圧倒されていると思います。次に、特定のコードを説明しましょう:
(コードを使用する前に確認してください。NW という名前のシステム DSN ファイルを作成します。このファイルは
Northworld (中国語の ACCESS97 に付属のサンプル データベース) を使用します。
HTML ページは 2 つのフレームに分割されています。 main.html で submit が使用されていないことがわかります
したがって、ページ上で直接 Enter キーを押した場合は、何も表示されません
このページの部分更新テクニックを使用するには、「情報を見る」ボタンをクリックする必要があります。ボタンをクリックした後、ページに少し時間がかかります (この間、Java アプレットはバックグラウンドでサーバーとの接続を確立します)
その後、ページはすぐに通常のマウスに戻り、ページ上で引き続き他の操作を実行できます。
通常のページ更新のようにデータを待つ必要はありません。
info.asp は、実際には文字列を処理するための非常に単純なプログラムであることが一目でわかります。
DHTML テクノロジーに精通している場合は、これらの操作をクライアントで完了できます。
EmpData.asp はサーバー側でデータを処理するプログラムです。
はい、誰もが自分自身でメリットを体験できます
。
コードを変更しすぎないように特に注意してください。そうしないと、結局のところ、JavaScript でプログラミングしているのです。