想象一下,您有一个显示书单的表格(就像索引一样),并且您想在名为“已售出”(例如复选框)的列中进行更改。因此,一旦完成“检查”已售出的书籍,您就可以单击一个按钮进行保存!您如何将该列表发回 Controller 并进行更新?
因此,在 Controller 中,代码是这样的:
def aMethod(){
...
[bookInstanceList:myBookList]
}
在GSP中:
<g:each in="${bookInstanceList}" status="i" var="bookInstance">
<tr class="${(i % 2) == 0 ? 'even' : 'odd'}">
<td><g:link action="show" id="${bookInstance.id}">${fieldValue(bean: bookInstance, field: "author")}</g:link></td>
<td><g:checkBox name="sold" value="${bookInstance?.sold}" /></td>
<td>
</tr>
</g:each>
这个想法是通过复选框允许用户更改该书的“已售”值,然后使用“按钮”提交。如何保存新的bookInstanceList?
非常感谢你
最佳答案
https://github.com/jeffbrown/books有一个简单的示例应用程序,它显示了您可以执行此操作的一种方法。运行该应用程序,打开默认的索引页面,单击链接,将带您到一个页面,您可以在其中单击复选框并更新图书库。
感兴趣的文件是https://github.com/jeffbrown/books/blob/master/grails-app/controllers/com/demo/BookController.groovy和https://github.com/jeffbrown/books/blob/master/grails-app/views/book/index.gsp。
希望对您有所帮助。
关于list - Grails在GSP( View )中更新列表,然后单击按钮提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23348197/