【问题标题】:How to assign an id in a dropdown menu to be able to know what was selected如何在下拉菜单中分配 id 以便能够知道选择了什么
【发布时间】:2015-04-07 14:36:57
【问题描述】:

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

【问题讨论】:

    标签: grails gsp


    【解决方案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 访问。

    【讨论】:

    • 所以在控制器中它会是这样的: if(params.fruit == apple) { ///do something } 正确?
    • @Mozein 你必须引用这个值但是是的,if(params.fruit == "apple")
    • 你是王者,请尝试回答我的新问题@IanRoberts
    猜你喜欢
    • 2014-10-12
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    • 1970-01-01
    • 2018-08-11
    • 2020-01-25
    • 1970-01-01
    • 2016-01-21
    相关资源
    最近更新 更多