サンプルコードにそって、使用方法を説明します。
◆JSVR部品を書き出す
全体の流れは次のとおりです。
JSPカスタムタグインタフェースのライブラリの宣言
部品の書き出し
ここでは、文字表示部品および文字入力部品それぞれの書き出しについて例として示します。
<%@ page contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J" %> <%@ taglib uri="com.fujitsu.jsvr.taglib" prefix="JSVR" %> (1)
<HTML> <HEAD> <META http-equiv="content-type" content="text/html; charset=Shift_JIS"> </HEAD> <BODY> <JSVR:EJText JSVRPath="/j_svr"
charsetName="EJ_SJIS" fontSize="32" text="登録ページ" /> (2)
<br> <FORM action="....."> <JSVR:EJInputEnv JSVRPath="/j_svr" editable="true" (3)
charsetName="EJ_SJIS" submitName=""
tabindex="0" defaultText="" searchId="20|30|40" inputFontSize="24"
listFontSize="18" listCount="10" maxTextLength="30" grid="true"
detailedStyle="" textForeColor="CC0000" classOnFocus="" classOnBlur=""
classDisable="" eventCallBack="">
名前を入力してください<br> <JSVR:EJInput submitName="name" searchId="40|20" /><br> (4)
住所を入力してください> <JSVR:EJInput submitName="address" searchId="30|20" /><br> (5)
</JSVR:EJInputEnv> (6)
<INPUT type="submit"> </FORM> </BODY> </HTML>
このJSP内でJSPカスタムタグインタフェースを使えるようにするための宣言です。
JSVR文字表示部品の設定例です。
JSVR文字入力部品のプロパティ設定開始タグです。終了タグまでの間にある EJInputに対して、ここで設定したプロパティが適用されます。
名前入力用プロパティの設定例です。
この例では、サブミット時のname属性を"username"に変更し、変換種別を"40|20"(氏名優先|標準変換)に変更しています
住所入力用プロパティの設定例です。
この例では、サブミット時のname属性を"address"に変更し、変換種別を"30|20"(住所入力|標準変換)に変更しています
JSVR文字入力部品のプロパティ設定終了タグです。
注意
HTMLの<META>や、JSPでの文字エンコーディング指定の注意点については、「1.1.2 キャラクタセットについての注意」を参照してください。
◆書き出したJSVR部品を操作する
JSPカスタムタグインタフェースを使用すると、JavaScriptを記述する必要がなく便利ですが、利用者が自ら部品コントロールクラス(EJ_Control)をクリエイトしないため、JSVR文字入力部品アクセスメソッドを使用する際は、現在のWebページ(window.document)におけるEJ_Controlのインスタンスを別途取得する必要があります。
また、書き出したJSVR文字入力部品に対してアクセスメソッドを使用する場合は、サブミット名からJSVR部品にアクセスするメソッド(.....ByName())を使用する必要があります。
次のサンプルコードは、JSVR文字入力部品(submitName="myName")の値を取得し、チェックするメソッドの例です。
.....
<JSVR:EJInput submitName="myName" searchId="40|20" /><br> (1)
..... <input type="button" onclick="checkEJInputValue()" value="チェックします"> ..... <script language="JavaScript"> <!-- function checkEJInputValue() { var objEJC = ej_agt_getEJCInstance(); (2)
var value = objEJC.getSubmitValueByName("myName"); (3)
if( ..... != value ) { ..... } ..... } //--> </script> .....
JSPカスタムタグインタフェースによるJSVR文字入力部品書き出しです。
現在のWebページにおける部品コントロールクラス(EJ_Control)のインスタンスを取得します。
JSPカスタムタグインタフェースで指定したサブミット名をアクセスメソッド(getSubmitValueByName())に渡し、特定のJSVR部品のサブミット値を取得します。