Extension - 逆引きリファレンス - 入力フォーム

ポストバック 用のフォームは, <form> 要素に id 属性を付け, 値を form または Form で終わるようにします.

action 属性および method 属性, name 属性はレンダリング時に付加されます (テンプレートに記述されていても無視されます).

例:テンプレートHTML (foo.html)
... ]]>
例:レンダリング結果

レンダリング結果は次のようになります.

... ]]>

type 属性が text<input> 要素を記述して id 属性を付け, その値と同じ名前のプロパティをページクラスに用意します.

レンダリング時, <input> 要素の value 属性にプロパティの値が設定されます. プロパティの値が '<''>' 等を含む場合はエスケープされます.

ポストバック 時,ブラウザで入力された値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

name プロパティの値が "Teeda" の場合, レンダリング結果は次のようになります.

]]>

テキストフィールドに "Seasar" と入力してサブミットすると, ページクラスの name プロパティには "Seasar" が設定されます.

<input> 要素の class 属性に "T_currency" を含めます.

テキストフィールドに入力できるのは数字と符号 ( '-' ),小数点 ( '.' ),カンマ ( ',' ) に限定されます. 数字の後に 't''m''b' キーを押すと,入力済みの数がそれぞれ 1,000 倍,1,000,000 倍, 1,000,000,000 倍されます.

不正なキーが押されるとテキストフィールドはクリアされます.

フォーカスが外れると入力した数はカンマ区切りになります.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

<input> 要素の class 属性に "T_date" を含めます.

テキストフィールドに入力できるのは数字とスラッシュ ( '/' ) に限定されます.

年は二桁で入力することができます. フォーカスが外れると年は4桁に変換され, スラッシュ区切りになります.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

type 属性が password<input> 要素を記述して id 属性を付け, その値と同じ名前のプロパティをページクラスに用意します.

レンダリング時, <input> 要素の value 属性に値は設定されません.

ポストバック 時,ブラウザで入力された値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

パスワードフィールドに "1234" と入力してサブミットすると, ページクラスの pwd プロパティには "1234" が設定されます.

type 属性が password<input> 要素に te:redisplay 属性を付け, その値に true を指定します.

レンダリング時, <input> 要素の value 属性にプロパティの値が設定されます. プロパティの値が '<''>' 等を含む場合はエスケープされます.

ポストバック 時,ブラウザで入力された値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

pwd プロパティの値が "hoge" の場合, レンダリング結果は次のようになります.

]]>

<textarea> 要素を記述して id 属性を付け, その値と同じ名前のプロパティをページクラスに用意します.

レンダリング時, <textarea> 要素の内容にはプロパティの値が設定されます. プロパティの値が '<''>' 等を含む場合はエスケープされます.

ポストバック 時,ブラウザで入力された値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
dummy ]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

name プロパティの値が "Teeda" の場合, レンダリング結果は次のようになります.

Teeda ]]>

テキストエリアに "Seasar" と入力してサブミットすると, ページクラスの name プロパティには "Seasar" が設定されます.

静的なラジオボタンは, 一つ一つが独立したコンポーネントからなるラジオボタンです. それぞれのラジオボタンは同じ名前を持つラジオボタンとの間で排他的に選択されます.

静的なラジオボタンは,テンプレートHTMLに記述された <input> をそのままレンダリングでも使用するタイプのラジオボタンです.

<span> 要素または <div> 要素に id 属性を付け, その値と同じ名前のプロパティをページクラスに用意します. このプロパティは選択された項目の値を保持します.

<span> 要素または <div> 要素の内容に type 属性が radio<input> 要素を記述して,その name 属性に <span> 要素または <div> 要素の id 属性と同じ値を指定します. 同じ name 属性を持つ <input type="radio"> 要素を複数記述することができます.

ポストバック 時,ブラウザで選択されたラジオボタンの value 属性の値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合はプロパティは設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

2番目のラジオボタン(B)を選択してサブミットすると, ページクラスの selected プロパティには "B" が設定されます.

<span> 要素または <div> 要素の id 属性と同じ名前のプロパティに,チェックされた状態で表示したい <input> 要素の value 属性と同じ値を設定します.

レンダリング時, input 要素の value 属性の値が, <span> 要素または <div> 要素の id 属性と同じ名前のプロパティの値と一致する <input> 要素には, checked 属性が付け加えられます.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

selected プロパティの値が "A" の場合, レンダリング結果は次のようになります.

]]>

ダイナミックプロパティ 」と組み合わせます.

type 属性が radio<input> 要素に id 属性を付け, その値に Value を加えた名前のプロパティをページクラスに用意します. このプロパティは項目の値を保持します.

レンダリング時, input 要素の value 属性の値は id + Value という名前のプロパティ値に置き換えられます.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

code1Value"t"name1"Teeda" で, code2Value"s"name2"SAStruts" の場合, レンダリング結果は次のようになります.

]]>

1番目のラジオボタン(Teeda)を選択してサブミットすると, ページクラスの selected プロパティには "t" が設定されます.

forEach と組み合わせます.

<span> 要素または <div> 要素の内容に,forEach にマッピングされる ( id 属性が Items で終わる) 要素を記述します. その id 属性と同じ値を持つプロパティをページクラスに用意します. このプロパティの型は配列または java.util.List に,その要素の型はDtoまたは java.util.Map にします.

type 属性が radio<input> 要素に id 属性を付けます.

input 要素の id + Value という名前を持つDtoのプロパティまたは Map のキーを用意します. Dtoのプロパティまたは Map のキーと同じ名前のプロパティをページクラスにも持たせます.

レンダリング時, input 要素の value 属性の値は id + Value という名前のプロパティ値に置き換えられます.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
productItems; public String codeValue; //Teedaが設定 public String name; //Teedaが設定 ]]>
例:Dtoのプロパティ (ProductDto.java)
例:レンダリング結果

productItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

1番目のラジオボタン(Teeda)を選択してサブミットすると, ページクラスの selected プロパティには "t" が設定されます.

関連項目

動的なラジオボタンは, 複数のラジオボタンの集まりによって構成されるコンポーネントです.

動的なラジオボタンでは,テンプレートHTMLに記述された <input> 要素はレンダリングで使用されません. <input> 要素はselectOneRadioによって動的に生成されます.

デフォルトでは,複数のラジオボタンが <table> 要素を使って横にレイアウトされます.

<span> 要素に id 属性を付けます. 要素の内容には, type 属性が radio で, <span> 要素の id 属性と同じ name 属性を持つ <input> 要素を記述します. この <input> 要素は実行時には捨てられます (ブラウザで直接プレビューする際のモックとして活用してください).

ページクラスに2つのプロパティを用意します. 一つめは <span> 要素の id 属性と同じ名前で, 配列型のプロパティです. このプロパティは選択された項目の値を保持します.

二つめは <span> 要素の id 属性の値に Items を加えた名前で, 型は次のいずれかです.

  • 配列または java.util.List
  • java.util.Map

配列または List 型の場合は, その要素型はDtoまたは java.util.Map で, label および value というプロパティ ( Map の場合はキー) でラジオボタンのラベルと値を保持します. Map の場合は, label = value というマッピングでラベルと値を保持します (順序を維持するには java.util.LinkedHashMap を使います).

レンダリング時, <span> 要素の内容は Items プロパティの要素の数分の <input> 要素に置き換えられます.

ポストバック 時,ブラウザで選択された項目の値が <span> 要素の id 属性と同じ名前のプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
Item1 Item2 ]]>
例:ページクラスのプロパティ (FooPage.java)
selectItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

最初のラジオボタンを選択してサブミットすると, ページクラスの select プロパティには, "A" が設定されます.

<span> 要素の te:col 属性に 1 行あたりのチェックボックスの数を指定します.

例:テンプレートHTML (foo.html)
Item1 Item2 ]]>
例:ページクラスのプロパティ (FooPage.java)
selectItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

<span> 要素の te:layout 属性に pageDirection を指定します (デフォルトは lineDirection です).

例:テンプレートHTML (foo.html)
Item1 Item2 ]]>
例:ページクラスのプロパティ (FooPage.java)
selectItems; ]]>
例:レンダリング結果

optionItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

<span> 要素の te:layout 属性に none を指定します.

例:テンプレートHTML (foo.html)
Option1 Option2 ]]>
例:ページクラスのプロパティ (FooPage.java)
selectItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

AAAA ]]>

ポストバック 時に, 選択された項目の値だけではなく, ラベルもプロパティで受け取るには, <span> 要素よりも に, 隠しフィールド ( input 要素) を用意します. input 要素の id 属性は, <span> 要素の id 属性の値に ItemsSave を加えた名前を指定します.

ページクラスにラベルを受け取るプロパティを用意します. プロパティは <span> 要素の id 属性の値に Label を加えた名前で, 型は String とします.

ポストバック 時,ブラウザで選択された項目のラベルが <span> 要素の id 属性の値に Label を加えた名前のプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
Item1 Item2 ]]>
例:ページクラスのプロパティ (FooPage.java)
selectItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

最初のラジオボタンを選択してサブミットすると, ページクラスの selectLabel プロパティには, "AAAA" が設定されます.

単一項目のチェックボックスは, 一つのチェックボックスだけで構成されるコンポーネントです.

type 属性が checkbox<input> 要素を記述して id 属性を付け, その値と同じ名前で型が boolean のプロパティをページクラスに用意します.

レンダリング時, <input> 要素の value 属性にプロパティの値が設定されます.

ポストバック 時,ブラウザで選択された状態がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

チェックボックスを選択してサブミットすると, ページクラスの option プロパティには true が設定されます.

<input> 要素の id 属性と同じ名前のプロパティを true に設定します.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

option プロパティの値が true の場合, レンダリング結果は次のようになります.

]]>

チェックボックスの選択を解除してサブミットすると, ページクラスの option プロパティには false が設定されます.

forEach と組み合わせます.

forEach にマッピングされる ( id 属性が Items で終わる) 要素を記述します. その id 属性と同じ値を持つプロパティをページクラスに用意します. このプロパティの型は配列または java.util.List に,その要素の型はDtoまたは java.util.Map にします. Dtoのプロパティまたは Map のキーと同じ名前のプロパティをページクラスにも持たせます.

type 属性が checkbox<input> 要素に id 属性を付け, Dtoのプロパティまたは Map のキーと同じ名前を付けます.

レンダリング時, input 要素の value 属性の値は id 属性の値と同じ名前のプロパティに置き換えられます.

注意点

サブミットされるフォームデータにチェックされなかった項目は含まれないため, 繰り返しの中にチェックボタンしか項目がない場合, 繰り返しの数を正確に判定できない場合があります. これを回避するには,繰り返しの中に隠し項目を含めるようにします.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
optionItems; public boolean checked; //Teedaが設定 public String name; //Teedaが設定 ]]>
例:Dtoのプロパティ (OptionDto.java)
例:レンダリング結果

optionItems が2つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

1番目のチェックボックス(Teeda)を選択してサブミットすると, ページクラスの optionItems の最初の要素の option プロパティには true が,2番目の要素の option プロパティには false が設定されます.

関連項目

複数項目のチェックボックスは, 複数のチェックボックスの集まりによって構成されるコンポーネントです.

複数項目のチェックボックスでは,テンプレートHTMLに記述された <input> 要素はレンダリングで使用されません. <input> 要素はselectManyCheckboxによって動的に生成されます.

デフォルトでは,複数のチェックボックスが <table> 要素を使って横にレイアウトされます.

<span> 要素に id 属性を付けます. 要素の内容には, type 属性が checkbox で, <span> 要素の id 属性と同じ name 属性を持つ <input> 要素を記述します. この <input> 要素は実行時には捨てられます (ブラウザで直接プレビューする際のモックとして活用してください).

ページクラスに2つのプロパティを用意します. 一つめは <span> 要素の id 属性と同じ名前で, 配列型のプロパティです. このプロパティは選択された項目の値を保持します.

二つめは <span> 要素の id 属性の値に Items を加えた名前で, 型は次のいずれかです.

  • 配列または java.util.List
  • java.util.Map

配列または List 型の場合は, その要素型はDtoまたは java.util.Map で, label および value というプロパティ ( Map の場合はキー) でラジオボタンのラベルと値を保持します. Map の場合は, label = value というマッピングでラベルと値を保持します (順序を維持するには java.util.LinkedHashMap を使います).

レンダリング時, <span> 要素の内容は Items プロパティの要素の数分の <input> 要素に置き換えられます.

ポストバック 時,ブラウザで選択された項目の値が <span> 要素の id 属性と同じ名前のプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
Option1 Option2 ]]>
例:ページクラスのプロパティ (FooPage.java)
optionItems; ]]>
例:レンダリング結果

optionItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

全てのチェックボックスを選択してサブミットすると, ページクラスの option プロパティには, "A""B""C" を要素とする配列が設定されます.

<input> 要素の id 属性と同じ名前のプロパティに, 選択状態にしたい項目の値を要素とする配列を設定します.

例:テンプレートHTML (foo.html)
Option1 Option2 ]]>
例:ページクラスのプロパティ (FooPage.java)
optionItems; ]]>
例:レンダリング結果

option プロパティに "A""C" を要素とする配列を設定すると, レンダリング結果は次のようになります.

]]>

<span> 要素の te:col 属性に 1 行あたりのチェックボックスの数を指定します.

例:テンプレートHTML (foo.html)
Option1 Option2 ]]>
例:ページクラスのプロパティ (FooPage.java)
optionItems; ]]>
例:レンダリング結果

optionItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

<span> 要素の te:layout 属性に pageDirection を指定します (デフォルトは lineDirection です).

例:テンプレートHTML (foo.html)
Option1 Option2 ]]>
例:ページクラスのプロパティ (FooPage.java)
optionItems; ]]>
例:レンダリング結果

optionItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

<span> 要素の te:layout 属性に none を指定します.

例:テンプレートHTML (foo.html)
Option1 Option2 ]]>
例:ページクラスのプロパティ (FooPage.java)
optionItems; ]]>
例:レンダリング結果

optionItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

AAAA ]]>

単一選択の選択リストでは,テンプレートHTMLに記述された <option> 要素はレンダリングで使用されません. <option> 要素はselectOneMenuによって動的に生成されます.

multiple 属性を指定しない <select> 要素を記述して id 属性を付けます. <select> 要素の内容には <option> 要素を記述することができます. この <option> 要素は実行時には捨てられます (ブラウザで直接プレビューする際のモックとして活用してください).

ページクラスに2つのプロパティを用意します. 一つめは <select> 要素の id 属性の値と同じ名前のプロパティで, 選択された項目の値を保持します.

二つめは <select>id 属性の値に Items を加えた名前で, 型は次のいずれかです.

  • 配列または java.util.List
  • java.util.Map

配列または List 型の場合は, その要素型はDtoまたは java.util.Map で, label および value というプロパティ ( Map の場合はキー) でラジオボタンのラベルと値を保持します. Map の場合は, label = value というマッピングでラベルと値を保持します (順序を維持するには java.util.LinkedHashMap を使います).

レンダリング時, <option> 要素の value 属性に value プロパティまたは Map のキーが, 内容に label プロパティまたは Map の値が設定されます.

ポストバック 時,ブラウザで選択された <option> 要素の value 属性の値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
selecteItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

選択リストで Teeda を選択してサブミットすると, ページクラスの select プロパティには "t" が設定されます.

<select> 要素の id 属性の値と同じ名前のプロパティに, 選択状態にしたい項目の値を設定します.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
selecteItems; ]]>
例:レンダリング結果

select プロパティに "t" を設定すると, レンダリング結果は次のようになります.

]]>

<select> 要素の id 属性の値と同じ名前のプロパティを必須項目にします.

例:ページクラスのプロパティ (FooPage.java)
selecteItems; ]]>
例:レンダリング結果
]]>

どの項目も選択しないでサブミットすると, バリデーションでエラーとなります.

アプリケーション全体で「選択してください」が出力されないようにするには, teedaCustomize.dicon に次の定義を記述します.

@org.seasar.teeda.extension.util.NullLabelStrategy@FORCE_NO_NULL_LABEL ]]>

ポストバック 時に, 選択された項目の値だけではなく, ラベルもプロパティで受け取るには, <select> 要素よりも に, 隠しフィールド ( input 要素) を用意します. input 要素の id 属性は, <select> 要素の id 属性の値に ItemsSave を加えた名前を指定します.

ページクラスにラベルを受け取るプロパティを用意します. プロパティは <select> 要素の id 属性の値の値に Label を加えた名前で, 型は String とします.

ポストバック 時,ブラウザで選択された項目のラベルが <select> 要素の id 属性の値の値に Label を加えた名前のプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
selectItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

選択リストで Teeda を選択してサブミットすると, ページクラスの selectLabel プロパティには, "Teeda" が設定されます.

複数選択の選択リストでは,テンプレートHTMLに記述された <option> 要素はレンダリングで使用されません. <option> 要素はselectManyListによって動的に生成されます.

multiple 属性を指定した <select> 要素を記述して id 属性を付けます. <select> 要素の内容には <option> 要素を記述することができます. この <option> 要素は実行時には捨てられます (ブラウザで直接プレビューする際のモックとして活用してください).

ページクラスに2つのプロパティを用意します. 一つめは <select> 要素の id 属性の値と同じ名前で,配列型のプロパティです.このプロパティは選択された項目の値を保持します.

二つめは <select>id 属性の値に Items を加えた名前で, 型は次のいずれかです.

  • 配列または java.util.List
  • java.util.Map

配列または List 型の場合は, その要素型はDtoまたは java.util.Map で, label および value というプロパティ ( Map の場合はキー) でラジオボタンのラベルと値を保持します. Map の場合は, label = value というマッピングでラベルと値を保持します (順序を維持するには java.util.LinkedHashMap を使います).

レンダリング時, <option> 要素の value 属性に value プロパティまたは Map のキーが, 内容に label プロパティまたは Map の値が設定されます.

ポストバック 時,ブラウザで選択された <option> 要素の value 属性の値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
selecteItems; ]]>
例:レンダリング結果

selectItems が3つの要素を持つ場合, レンダリング結果は次のようになります.

]]>

選択リストで Teeda および SAStruts を選択してサブミットすると, ページクラスの select プロパティには "t""s" を要素とする配列が設定されます.

<select> 要素の id 属性の値と同じ名前のプロパティに, 選択状態にしたい項目の値を要素とする配列または List を設定します.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
selecteItems; ]]>
例:レンダリング結果

select プロパティに "t""s" を要素とする配列を設定すると, レンダリング結果は次のようになります.

]]>

<select> 要素の id 属性の値と同じ名前のプロパティを必須項目にします.

例:ページクラスのプロパティ (FooPage.java)
selecteItems; ]]>
例:レンダリング結果
]]>

どの項目も選択しないでサブミットすると, バリデーションでエラーとなります.

アプリケーション全体で「選択してください」が出力されないようにするには, teedaCustomize.dicon に次の定義を記述します.

@org.seasar.teeda.extension.util.NullLabelStrategy@FORCE_NO_NULL_LABEL ]]>

form 要素に enctype 属性を追加し,値に multipart/form-data を指定します.

type 属性が file<input> 要素を記述します.

<input> 要素の id 属性と同じ名前で, org.seasar.teeda.extension.util.UploadedFile 型のプロパティをページクラスに用意します. org.seasar.teeda.extension.util.UploadedFile の詳細や他に使えるプロパティの型, web.xml の設定等は「 ファイルアップロード 」を参照してください.

ポストバック 時,ブラウザからアップロードされたファイルがプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
... ]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

ファイル名入力フィールドでファイル foo.txt を選択してサブミットすると, ページクラスの textFile プロパティには, name プロパティに "textFile.txt" が設定された org.seasar.teeda.extension.util.UploadedFile が設定されます.

関連項目

type 属性が hidden<input> 要素を記述して id 属性を付け, その値と同じ名前のプロパティをページクラスに用意します.

レンダリング時, <input> 要素の value 属性にプロパティの値が設定されます. プロパティの値が '<''>' 等を含む場合はエスケープされます.

ポストバック 時,隠しフィールドの値がプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果

name プロパティの値が "Teeda" の場合, レンダリング結果は次のようになります.

]]>

フォームをサブミットすると, ページクラスの name プロパティには "Teeda" が設定されます.

<input> 要素の id 属性を,保存するプロパティの名前 + Save にします.

レンダリング時,プロパティの値をシリアライズしたバイト列をBase64でエンコードした文字列が <input> 要素の value 属性に設定されます.

ポストバック 時,隠しフィールドの値がデコードおよびデシリアライズされてプロパティに設定されます. ただし, 「 バリデーション 」でエラーが発生した場合は設定されません.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのプロパティ (FooPage.java)
例:レンダリング結果
]]>

type 属性が submitbuttonimage のいずれかの <input> 要素を記述します.

<input> 要素に id 属性を付け, その値を do で始めて, ページクラスに同じ名前のメソッドを用意します. do~() メソッドの詳細は 「 ライフサイクル 」-「 do~()メソッド 」を参照してください.

ポストバック 時, INVOKE_APPLICATIONフェーズで do~() メソッドが呼び出されます. ただし, 「 バリデーション 」でエラーが発生した場合は呼び出されません. INVOKE_APPLICATIONフェーズについては,「 ライフサイクル 」-「 JSFライフサイクルとの関係 」を参照してください.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのメソッド (FooPage.java)
例:レンダリング結果
]]>

フォームをサブミットすると, ページクラスの doSend() メソッドが呼び出されます.

関連項目

<input> 要素の id 属性およびページクラスのメソッドを doOnce で始めます.

id 属性が doOnce で始まるサブミットボタンを含むフォームにはトランザクショントークンが埋め込まれます. ポストバック 時, トランザクショントークンがチェックされ,二重サブミットを検出すると最初のサブミットに対する応答画面へリダイレクトするか, エラー画面が表示されます.

例:テンプレートHTML (foo.html)
]]>
例:ページクラスのメソッド (FooPage.java)

<input> 要素の id 属性を doOnce で始め, te:renderJs 属性に true を指定します.

レンダリング時,二重サブミットを防止するJavaScriptを記述した <script> 要素等が出力されます.

例:テンプレートHTML (foo.html)
]]>

<input> 要素の id 属性を go + 遷移先画面名 とします.

ポストバック 時, UPDATE_MODEL_VALUESフェーズの後に指定された画面に遷移します. ただし, 「 バリデーション 」でエラーが発生した場合は遷移しません. UPDATE_MODEL_VALUESフェーズについては,「 ライフサイクル 」-「 JSFライフサイクルとの関係 」を参照してください.

例:テンプレートHTML (foo.html)
]]>
例:レンダリング結果
]]>

フォームをサブミットすると, nextPage.html に画面遷移します.

<input> 要素の id 属性を jump + 遷移先画面名 とします.

ポストバック 時, APPLY_REQUEST_VALUESフェーズの後に指定された画面へ遷移します. バリデーションは行われません. APPLY_REQUEST_VALUESフェーズについては,「 ライフサイクル 」-「 JSFライフサイクルとの関係 」を参照してください.

例:テンプレートHTML (foo.html)
]]>
例:レンダリング結果
]]>

フォームをサブミットすると, バリデーションを行わずに nextPage.html に画面遷移します.