Grails pageProperty和内联IF条件

Grails pageProperty和内联IF条件,grails,if-statement,gsp,Grails,If Statement,Gsp,我正在使用pageProperty函数驱动布局中的一些菜单。我需要根据meta.nav pageProperty返回的内容将特定类应用于链接。现在,看起来像这样 <g:if test="${pageProperty(name:'meta.nav') == 'support'}">  <g:link class="selected" ...>support</g:link> </g:if> <g:else>  <g:link .

我正在使用pageProperty函数驱动布局中的一些菜单。我需要根据meta.nav pageProperty返回的内容将特定类应用于链接。现在,看起来像这样

<g:if test="${pageProperty(name:'meta.nav') == 'support'}">
  <g:link class="selected" ...>support</g:link>
</g:if>
<g:else>
  <g:link ...>support</g:link>
</g:else>

只是似乎无法让它正确运作。非常感谢您的帮助。

我会尝试将真实条件设置为字符串:

${(pageProperty(name:'meta.nav') == 'support') ? 'selected' : null}
它可能试图访问GSP脚本中名为
selected
的变量,该变量未定义


希望这能有所帮助。

作为一种黑暗中的疯狂刺杀,你觉得:

${ pageProperty(name:'meta.nav').equals( 'support' ) ? 'selected' : null }

虽然不像groovy那样,但可能对解析器的迷惑性更小(看起来有些东西在某个地方变得混乱,并将
==support
转储到不应该的地方)

,这也不起作用。在呈现的HTML中,我以以下内容结束:class=“support”部分正在工作,但出于某种原因,我以额外的==“support”结束。@Gregg不知道它是否会工作,但它确实可以
${pageProperty(名称:'meta.nav')。equals('support')?'selected':null}
让您更接近吗?
${(pageProperty(name:'meta.nav') == 'support') ? 'selected' : null}
${ pageProperty(name:'meta.nav').equals( 'support' ) ? 'selected' : null }