5

我有一个类型的选择框,每种类型都有自己的参数。类型选择框将触发一些调用模板并在我的视图上呈现参数选择框的 AJAX。参数由名称:值对组成,因此每个名称都可以有多个值。

一些参数需要multiple='true' 让用户为每个名称选择多个值,而其他参数需要限制为只能选择一个。

在我的 gsp 页面中,我有一堆这些:

    <g:if test="${it?.getKey().toString().equals('PARAMETER_A')}">
      <td><g:select multiple="true" optionKey="id" optionValue="value" name="sampleParameters" id="parameter" value="${params?.sampleParameters}" from='${it?.getValue().sort()}'></g:select></td>
    </g:if>
    <g:if test="${it?.getKey().toString().equals('PARAMETER_B')}">
      <td><g:select multiple="true" optionKey="id" optionValue="value" name="sampleParameters" id="parameter" value="${params?.sampleParameters}" from='${it?.getValue().sort()}'></g:select></td>
    </g:if>

我的问题是我有一个特定类型的 6 个参数需要选择多个值,其余的不需要。除了像上面那样显式输入之外,有没有一种方法可以像在 java 中一样在 ag:if 语句中测试不止一个东西?如:

if(something.equals(PARAMETER_A) || something.equals(PARAMETER_B))

等等

有没有办法在 groovy 中做类似于 java 的方法?

4

1 回答 1

14

Grailsg:if只是在其测试属性中使用了 groovy。所以要回答你的问题,是的:

<g:if test="${something.equals(PARAMETER_A) || something.equals(PARAMETER_B)}">
</g:if>
于 2012-08-03T19:23:16.350 回答