プロジェクト

全般

プロフィール

操作

画面 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">

渡邉 拓英 さんが8ヶ月前に更新 · 0件の履歴