10

使用标签,您可以在 gsp 中执行此操作:

<g:if test="${someBean?.aCondition}">
  <div class="aSection">
  ...
  </div>
</g:if>

我真正想做的是添加第二个“类”,它包含基于“${someBean?.aCondition}”的值的“display:none”或“display:block”属性。

最终的 html 会是这样的:

<div class="aSection hiddenItem">
...
</div>

(如果 ${someBean?.aCondition} 为真,则 div 的类将具有“shownItem”)

对应的css:

.shownItem
{
  display: block;
}
.hiddenItem
{
  display: none;
}

实现这一目标的好方法是什么?

4

2 回答 2

19

很简单:

<div class="aSection ${someBean?.aCondition ? 'shownItem':'hiddenItem'}">
...
</div>

您可以在 html 属性中使用 ${} 块,没问题,只要确保不要在表达式块中使用任何双引号,因为这会使事情变得混乱。

于 2009-11-20T20:24:51.403 回答
6

或者,如果您不希望在某些(例如自动对焦标签)条件下显示该属性:

<input name="email" type="text" class="input-small" placeholder="Email" ${!flash.email ? 'autofocus="autofocus"':''} value="${flash.email}">
于 2012-11-09T12:17:41.340 回答