grails中的内联if语句

grails中的内联if语句,grails,groovy,gsp,Grails,Groovy,Gsp,Grails中有没有一种方法可以在HTML属性上内联执行条件语句,例如: <div class="${if(sec.isLoggedIn()) loggedInClass}"> 如果用户已登录,我将尝试向某些元素添加一个类。这可能适用于您: <div class="${(sec.isLoggedIn()?loggedInClass:null)}"> 或者试试这个: <div class="${(sec.isLoggedIn()?'loggedInClas

Grails中有没有一种方法可以在HTML属性上内联执行条件语句,例如:

<div class="${if(sec.isLoggedIn()) loggedInClass}">


如果用户已登录,我将尝试向某些元素添加一个类。

这可能适用于您:

<div class="${(sec.isLoggedIn()?loggedInClass:null)}">

或者试试这个:

<div class="${(sec.isLoggedIn()?'loggedInClass':'null')}">

您可以执行以下操作:

<div class="${sec.loggedIn ? 'loggedInClass' : ''}">


hmm不起作用,但奇怪的是,当我运行它时,你可能会看到,但我得到的是。因此,出于某种原因,使用这样的代码会使等号和引号不显示。不确定为什么会发生这种情况。@这意味着它的计算结果为null。尝试使用字符串而不是
null
。试试这个:
nvm上一篇文章在chrome开发工具中显示为just class,因为class=”“就是这样显示的。但现在我想我的问题是,sec.ifLoggedIn()返回false。测试结果始终为notLoggedIn。我知道我已经登录了,因为我有一个注销,并且可以正常工作。@Trip aaahhh ddnt意识到你正在开发工具中查找。是的,由于某种原因,chrome开发工具在没有看到任何属性时会这样做。你知道为什么${sec.ifLoggedIn()}会是假的,但会是真的吗?我同意这是最好的解决方案Tim,类似于JSP对内联代码使用
标记,我可以在grails中对任意代码使用
${}
,不仅仅是计算为表达式的语句?