这就是我在表中所拥有的:
<td><g:checkBox name="book_${bookInstance.id}"/> </td>
Run Code Online (Sandbox Code Playgroud)
这就是我尝试获取所选实例的方式:
params.each{
if(it.key.startsWith("book_"))
books << (it.key - "book_") as Integer
}
Run Code Online (Sandbox Code Playgroud)
我得到一个空列表.如何解决这个问题?如果你有更好的解决方案,我愿意接受建议.
尝试创建具有所有相同输入名称但具有不同值的复选框列表.
<g:each in="${books}" var="bookInstance">
<g:checkBox name="books" value="${bookInstance.id}"/>
</g:each>
Run Code Online (Sandbox Code Playgroud)
然后在您的控制器中,您可以通过以下方式获取所选书籍ID的列表:
params.list('books')
Run Code Online (Sandbox Code Playgroud)