Thymeleaf 条件类附加不起作用
Posted
技术标签:
【中文标题】Thymeleaf 条件类附加不起作用【英文标题】:Thymeleaf conditional classappend not working 【发布时间】:2020-11-29 17:12:30 【问题描述】:我的问题与this有关。
我有以下几点:
<div class="container">
<div class="wrapper">
<div class="arrow-steps clearfix">
<div th:each="caseStep : $getAppCaseStepList"
th:class="arbitrary"
th:classappend="$caseStep.casestepname == '$appCaseCurrentStep' ? 'step current' : 'step'"
th:text="$caseStep.casestepname">
</div>
</div>
</div>
</div>
$appCaseCurrentStep
是一个模型属性(一个字符串),我在控制器方法中通过 GET 发送它。
但不知何故,我无法在这种情况下为元素设置“步骤当前”类:
$caseStep.casestepname == '$appCaseCurrentStep'
我正在尝试在我的条件为真的情况下设置/附加“当前步骤”(字符串比较)。我在这里遗漏了什么或做错了什么?
【问题讨论】:
'$appCaseCurrentStep'
表示字符串$appCaseCurrentStep
。
当我使用$appCaseCurrentStep
时会抛出异常:there is still more data in the expression: 'lcurly()'
如果你试试== appCaseCurrentStep
?
大声笑.. 当您对此发表评论时,我正在自己输入答案。是的,你是对的.. 解决了它。 !谢谢 Chrylis。
$
标识整个表达式,因此在其中您无需重新启动“新”表达式。
【参考方案1】:
找到它here。 !
原因:表达式 $... 内不应有额外的 。
解决方案:以下表达式对我有用:
<div th:each="caseStep : $getAppCaseStepList"
th:class="asdfstep"
th:classappend="$caseStep.casestepname == appCaseCurrentStep ? 'step current' : 'step'"
th:text="$caseStep.casestepname"></div>
【讨论】:
以上是关于Thymeleaf 条件类附加不起作用的主要内容,如果未能解决你的问题,请参考以下文章
thymeleaf.extras.springsecurity4 sec:authorize 不起作用