【发布时间】:2022-05-05 02:53:24
【问题描述】:
我在让选择标签在 Grails 中为我工作时遇到问题。基本上,我试图从选择字段中获取一个值,并使用它对显示在 gsp 上的列表进行排序。选择标签如下所示:
<g:select from="['Ascending','Descending']" name="selectTest" id="selectTest" />
我正在尝试使用 g:links 来传递信息。我希望我能做类似的事情
<g:link action="sort" id="pid" params="[direction:${selectTest.value}]">Sort</g:link>
但是,这不起作用,因为该值始终作为 null 传递。我可以使用表单和 actionSubmit 传递我想要的数据,但是我需要能够对 3 个不同的表列进行排序,因此确定所需的列会很痛苦。此外,没有使用域对象,因此使用 g:sortableColumn 标签也不起作用。
有没有办法在不使用 JavaScript 和 hiddenFields 的情况下做到这一点?
【问题讨论】:
-
选择和链接是否都在同一个gsp中?这些都在服务器上呈现,因此在表单完成之前不会填充 selectTest 值。除非您在将控制权传递给要渲染的视图之前在控制器中填充,否则链接标记将返回 null。
-
是的,它们都在同一个 gsp 中。所以你是说我需要在将控制权传递给视图之前填充选择标签?
-
可以(并且将会)在客户端更改选择,因此您必须使用 javascript
标签: sorting grails html-select