JSF コンポーネントのイベント・ハンドラーの設定

JSF コンポーネントに対して、イベント・ハンドラーの働きをする JavaScript™ 関数を、 割り当てたり除去したりすることができます。このコンテキストでのイベント・ハンドラーとは、 ページ上で特定のイベントが発生するときに呼び出される JavaScript 関数です。例えば、onClick イベント・ハンドラーを使用して、テキスト入力フィールドに関数を割り当てることができます。 ブラウザーでこのフィールドをクリックすると、onClick イベント・ハンドラーとして定義された関数が実行されます。

イベント・ハンドラーとして使用される JavaScript 関数は、ページ自体に含まれる <script> タグか、そのページにリンクされているスクリプト・ファイルで、そのページ上で使用できなければなりません。EGL 関数は、 JSF コンポーネントのイベント・ハンドラーとしては使用できません。

このタスクには次のような前提条件があります。詳しくは、 『pageHandler から JSF コンポーネントへのアクセス』を参照してください。
イベント・ハンドラーを JSF コンポーネントに割り当てたり JSF コンポーネントから除去したりするには、 以下のステップを実行します。
  1. pageHandler の関数内のブランク行で、Ctrl + Shift + Z を押す。 ページ上の JSF コンポーネントを表示する「EGL ソース・アシスタント」ウィンドウが開きます。
  2. 「EGL ソース・アシスタント」ウィンドウで、アクセスしたい JSF イメージ・コンポーネントを選択する。
  3. OK」をクリックする。
    EGL ソース・アシスタントが、 2 行の EGL コードを pageHandler に追加します。第 1 行では、選択した JSF コンポーネントに一致する型の EGL 変数が 定義されます。第 2 行では、その変数が JSF コンポーネントに関連付けられます。 例えば、JSF 入力テキスト・コンポーネントにアクセスするコードは、 次のようになります。
    text1 HtmlInputText;
    text1 = myViewRoot.findComponent("form1:text1");
  4. ソース・アシスタントで作成した EGL 変数を使用して、 イベント・ハンドラーを割り当てたり除去したりする。 例えば、JavaScript 関数 myFunction() をテキスト・フィールドの onClick イベント・ハンドラーとして割り当てるには、次のコードを追加します。
    text1.setOnclick("myFunction");
    イベント・ハンドラーを JSF コンポーネントから除去するには、イベント・ハンドラーとして ブランク・ストリングを割り当てます。
    text1.setOnclick("");
フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.