基本機能
uji:validateタグは、HTMLのイベントが発生した時に項目の正当性チェックをして、エラーの場合に実行するJavaScriptを記述します。uji:validateタグは、uji:input、uji:textarea、uji:selectの各タグのコンテントとして記述します。
uji:validateタグのアトリビュートは以下を指定します。
アトリビュート名 | 省略 | 意味 | 省略時の動作 |
---|---|---|---|
event | 不可 | JavaScriptの実行の契機となるHTMLのイベントを指定します。 | 省略できません。 |
type | 可 | 文字列の種類が指定のもの以外であればエラーとします。 | チェックをしません。 |
length | 可 | 文字列長が指定の値以外であればエラーとします。(*) | チェックをしません。 |
minLength | 可 | 入力値として許される文字列長の最小値を指定します。文字列長が指定の値未満であればエラーとします。(*) | チェックをしません。 |
maxLength | 可 | 入力値として許される文字列長の最大値を指定します。文字列長が指定の値を超えていればエラーとします。(*) | チェックをしません。 |
minInclusive | 可 | 入力値として許される数値の最小値を指定します。数値が指定の値未満であればエラーとします。(**) | チェックをしません。 |
minExclusive | 可 | 入力値として許される数値の最小値を指定します。ただし、指定した値自身は含めません。数値が指定の値以下であればエラーとします。(**) | チェックをしません。 |
maxInclusive | 可 | 入力値として許される数値の最大値を指定します。数値が指定の値を超えていればエラーとします。(**) | チェックをしません。 |
maxExclusive | 可 | 入力値として許される数値の最大値を指定します。ただし、指定した値自身は含めません。数値が指定の値以上であればエラーとします。(**) | チェックをしません。 |
custom | 可 | 利用者定義のクラスを呼び出してJavaScriptを展開します。 | チェックをしません。 |
(*)補助文字の扱いについては“7.3 補助文字の文字数の数え方”を参照してください。
(**)typeにint, float以外を指定した場合、または、typeの指定を省略した場合は、数値としての比較ではなくUTF-16の文字列としての比較を行います。
eventにはHTMLの組み込みイベントを指定します。代表的なものを以下に示します。
blur | フォーカスを失った |
submit | 送信ボタンが押された |
reset | リセットボタンが押された |
複数の項目をカンマで区切って指定することも可能です。
フォームのイベントであるsubmit、resetを指定する場合は、"..submit"、"..reset"のように指定します。
typeには以下の条件を指定します。
int | 整数で使用できる文字から構成 |
float | 実数で使用できる文字から構成 |
alpha | 英字で構成 |
alphaUpper | 英大文字で構成 |
alnum | 英数字で構成 |
alnumUpper | 英大文字と数字で構成 |
kanji | 漢字(UTF-16で0100-FF5Fの範囲)で構成 |
uji:validateタグのコンテントには実行するJavaScriptを記述します。JavaScript中では項目を変数targetとして参照します。
JSP
<uji:form name="myform" beanId="body" beanCls="sample.BodyBean" verbs="ok,cancel"> <uji:input name="value1" > <uji:validate event="..submit" type="int" minInclusive="0"> alert("0以上の整数を指定してください"); </uji:validate> </uji:input> ... </uji:form>
JavaScript記述によっては、実行するWebブラウザによって動作に差が出る場合があります。
イベントモデル
uji:validateタグは、HTMLのイベントが発生した時に項目の正当性チェックをして、エラーの場合に実行するJavaScriptを記述します。
uji:validateタグは、uji:input、uji:textarea、uji:selectの各タグのコンテントとして記述します。
uji:validateタグは、イベントモデルで使用する際に以下のアトリビュートを指定します。これ以外のアトリビュートについては、“基本機能”を参照してください。
アトリビュート名 | 省略 | 意味 | 省略時の動作 |
---|---|---|---|
id | 可 | コンポーネントのIDを指定します。 | 自動的に付与されます。 |
uji:validateタグのコンテントには以下を記述します。
実行するJavaScriptを記述します。JavaScript中では項目を変数targetとして参照します。
JSP
<f:view> <uji:form name="myform" method="post"> <uji:input bean="myBean" property="value1"> <uji:validate event="..submit" type="int" minInclusive="0"> alert("0以上の整数を指定してください"); </uji:validate> </uji:input> ... </uji:form> </f:view>