我有一个包含三个选项的下拉菜单。其中三个将我引导到相同的控制器和相同的动作,但是我希望每个都分配不同的id,以便能够根据控制器内部的id做不同的事情。
例如,如果我有三个选择
<li> choice1 </li>
<li> choice2 </li>
<li> choice3 </li>
和控制器动作列表
def list = {
if(choice1 was selected)
//do something
else if (choice2 selected)
//do something else
}
我希望能够根据选择做出不同的事情。
这是我的GSP代码
<ul class="dropdown-menu" role="menu">
<li><g:link controller='Document' action='list'>apple</g:link></li>
<li><g:link controller='Document' action='list'>bluberry</g:link></li>
<li><g:link controller='Document' action='list'>strawberry</g:link></li>
<li class="divider"></li>
<li><g:link resource="gm">v4sa</g:link></li>
</ul>
答案 0 :(得分:1)
您可以使用params
属性将其他参数传递给链接:
<ul class="dropdown-menu" role="menu">
<li><g:link controller='Document' action='list' params='[fruit:"apple"]'>apple</g:link></li>
<li><g:link controller='Document' action='list' params='[fruit:"blueberry"]'>bluberry</g:link></li>
<li><g:link controller='Document' action='list' params='[fruit:"strawberry"]'>strawberry</g:link></li>
<li class="divider"></li>
<li><g:link resource="gm">v4sa</g:link></li>
</ul>
将?fruit=apple
(或其他)添加到链接的末尾,并使值可以在控制器中以params.fruit
访问。