我正在建立一个查询结果的列表,对于每个结果,我希望它们能够选择一个,并将该结果放在同一页面上。我可以使用单选按钮和一个附加的提交按钮,但是我不喜欢结果的外观。我的首选解决方案是使用按钮或每个结果的链接,并在选择时更新适当的div。我正在尝试为此使用submitToRemote
:
<g:each in="${users}" var="user">
<tr>
<td>
<g:submitToRemote value="${user.firstName} ${user.lastName}"
url="[action: 'modifyUser', id:'${user.id}']" update ="adminSpace"
class="btn btn-primary"/>
...
问题是URL中的id字段,我确定我没有正确访问它,但是我一生都找不到合适的语法。
目前我得到:
Message: named capturing group is missing trailing '}'
我看了文档(submitToRemote),上面写着:
url - The url to submit to, either a map containing keys for the action, controller and id or a string value
但是,它没有提供有关如何指定ID的任何指示。当我手动为id添加一个值时,它确实起作用(例如:
url="[action: 'modifyUser', id: '1']"
)。但是,这并不是非常有用。那么,如何在SubmitToRemote的范围内将ID传递给我的操作?
最佳答案
如果您尝试使用createLink方法怎么办?就像是:
<g:submitToRemote value="${user.firstName} ${user.lastName}"
url="${createLink(action: 'modifyUser', id: user.id)}" update ="adminSpace"
class="btn btn-primary"/>
关于grails - 在URL映射中包含带有submitToRemote标签的ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27628461/