如何从gsp传递控制器中方法调用的参数?

时间:2017-12-04 15:43:23

标签: grails gsp

我从gsp文件中调用位于控制器中的方法。有问题的方法有一个需要填充的参数。

目前以下是我如何拥有它并且不起作用。

<g:each in="${msdsLinkList}" status="i" var="msdsLink">
  <div id="msdsBox${i}" class="msdsBox">
    <g:link class="word-button" action="exportAttachment(msdsLink${i})"></g:link>
  </div>
</g:each>

如何将msdsLink $ {i}传递给exportAttachment方法?

2 个答案:

答案 0 :(得分:1)

尝试

<g:each in="${msdsLinkList}" status="i" var="msdsLink">
  <div id="msdsBox${i}" class="msdsBox">
    <g:link class="word-button" action="exportAttachment" id="${msdsLink.id}"></g:link>
  </div>
</g:each>

在您的控制器中,您可以将传入的值检索为

params.id

答案 1 :(得分:1)

除了elixir的回答,您可以在params标记中使用g:link

<g:each in="${msdsLinkList}" status="i" var="msdsLink">
  <div id="msdsBox${i}" class="msdsBox">
    <g:link class="word-button" action="exportAttachment" id="${msdsLink.id}"
            params="[foo: 'bar', bar: 'foo', value: msdsLink.value]"></g:link>
  </div>
</g:each>

在控制器的方法中,您只需使用params地图:

params.id
params.foo
params.bar
params.value
相关问题