私はそのような基本的な構造を持っています:
<g:form>
actionSubmit
</g:form>
<g:form>
actionSubmit
</g:form>
<g:each in personList - variable=person>
<tr>
<td><g:checkBox name="personList" value="${person.id}" checked="${false}"/></td>
<td>
<g:form>
actionSubmit
</g:form>
</td>
</tr>
</g:each>
これらの各フォームは、変数として personList チェックボックス配列に依存しています。私のコードの以前の版では、div 全体をフォームでラップしていました。これは機能しましたが、テーブルに 3 番目のフォームを追加したときに問題が発生しました。
選択したチェックボックスを渡すにはどうすればよいですか? すべてのボックスを選択するチェックボックスがあります-選択したボックスの配列で変数/hiddenFieldを割り当てるだけです。
ありがとう!
編集
単一のフォームを持つことの問題は、各行に列があり、1 対多の関係に要素を追加できることです。対応するアクション送信で person.id を渡すことができれば (つまり、行 2 で actionSubmit を実行した場合、行 2 の person.id を渡したい)、これは簡単なことです。
ただし、個人 ID を関連付けようとすると、すべての個人 ID の配列になってしまいます。したがって、これを回避する唯一の方法は、別々のフォームを持つことだと考えました。
<td>
<div id="reportsToResultsDiv2_${person.id}" class="reportsToResultsDiv2_${person.id}">
<g:select id="reportsTo" name="reportsTo.id" from="${rtResults}" optionKey="id" value="" />
<g:actionSubmit action="addReportsTo" value="Add" params="[c_id:'${person.id}']"/>
</div>
</td>