複数選択で remoteFunction ディレクティブを使用する必要があります。選択は次のとおりです。
<g:select name="receiptItems" from="${myproject.ReceiptItem.list()}"
multiple="multiple" optionKey="id" optionValue="description" size="5"
value="${receiptInstance?.receiptItems*.id}" class="many-to-many"
onchange="${remoteFunction(
controller: 'Receipt',
action: 'sumReceiptItems',
params: '\'receiptItemsSelected=\' + this.value',
onSuccess: 'updateTotalAmount(\'totalAmount\', data, \'00000\')')}"/>
パラメータを受け取り、それを使用して別のテキスト フィールドを更新するアクションsumReceiptItems
が Receipt コントローラにあります。receiptItemsSelected
問題は、選択された値が 1 つしかないことです。つまりthis.value
、最後に選択された値です。selectで選択したすべての値をコントローラーに渡す必要があります。どうすればいいですか?
貴重なご協力ありがとうございます