如何在下拉菜单中指定ID以便能够知道所选内容

时间:2015-04-07 14:36:57

标签: grails gsp

我有一个包含三个选项的下拉菜单。其中三个将我引导到相同的控制器和相同的动作,但是我希望每个都分配不同的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>

1 个答案:

答案 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访问。