Apcoordinator ユーザーズガイド |
目次
![]() ![]() |
第3部 Webアプリケーションの開発 | > 第16章 UJIタグを使ったプログラミング | > 16.3 クライアントスクリプト |
uji:validate
タグではユーザ定義のチェックを呼び出すことができます。
uji:validate
タグは以下のように記述します。例ではmycheckという利用者定義チェックを使っています。
customアトリビュートは、typeやlengthなどの他のvalidateタグのアトリビュートと同時に使用することはできません。
<uji:validate event="blur" custom="mycheck" > エラー時の処理 </uji:validate>
"if(...) {"
または"...; if(...) {"
の形にする必要があります。
また、チェック対象項目は変数targetで参照できます。
例を示します。
package somepackage; public class MyScriptGenerator extends com.fujitsu.uji.script.ValidateScriptGenerator { public String mycheck() { return "if(target.value.length != 8) {"; } }
package somepackage; import com.fujitsu.uji.script.ValidateScriptGenerator public class MyFactory extends com.fujitsu.uji.http.HttpFactory implements com.fujitsu.uji.script.ValidateScriptGeneratorFactory { public ValidateScriptGenerator newValidateScriptGenerator() { return new MyScriptGenerator(); } }
拡張クラスを使用する場合は、その前にuji:dispatch
タグが1回以上実行されている必要があります。
デフォルトのJavaScript生成パターンを変更したい場合には、拡張クラスで必要なメソッドをオーバライドします。例えば、lengthは以下のように実装されています。これらのメソッドをオーバライドすると出力パターンを変更することができます。
// if文の前に必要な処理 public String uji_length_pre(String length) { return null; } // if文内の判定文 public String uji_length(String length) { return "target.value.length != " + length; }
ValidateScriptGenerator
クラスの以下のメソッドをオーバライドしてデフォルトのJavaScript生成パターンを変更した場合、初期化パラメタuji.taglib.awareOfSupplementaryChar
の指定は無効となり、オーバライドしたメソッドが出力するJavaScriptが有効となります。uji.taglib.awareOfSupplementaryChar
については初期化パラメタを参照してください。
- uji_length
- uji_length_pre
- uji_maxLength
- uji_maxLength_pre
- uji_minLength
- uji_minLength_pre
目次
![]() ![]() |