画面 N件データを表示・入力する画面について¶
要点のみまとめる
サンプル:BU10100_開発_路線傭車料訂正
ポイント
◆継承を変更 extends BaseController → extends BaseControllerArray
・入力チェック等、配列(引数にインデックスがある)を対応
◆form の 明細部N件の項目をArrayにする
・HTMLからArrayとして受け取る
◆HTML部分 id→画面項目.ID + "_" + 連番
◆HTML部分 name→画面項目.ID ※揃える
・上記のため。 ※name …Formにマッピングするキー














追加¶
項目にカンマを含むデータが在ると・・・(カンマ編集した重量など)
例えば「12,345」
表示して実行→ModeXでFormのList受け取る場合、
本来の値・・・・・["12,345"] 要素数:1
Formに入る値・・・["12", "345"] 要素数:2
となってしまいます。※Springの仕様。
回避するため、Htmlのnameは配列型を明記してください。
<input name="BU4300018" th:id="'BU4300018_' + ${rowStat.count-1}">
↓
<input th:name="'BU4300018[' + ${rowStat.index} + ']'" th:id="'BU4300018_' + ${rowStat.count-1}">
thymeleaf展開後 こんな感じ nameに[X]が付く形で!
<input name="BU4300018[0]" th:id="BU4300018_0">
