如何在下拉菜单中分配一个 id 以便能够知道选择了什么

How to assign an id in a dropdown menu to be able to know what was selected

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

您可以使用 params 属性将其他参数传递给 link:

<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(或其他)添加到 link 的末尾,并使该值在控制器中可作为 params.fruit 访问。