我想使用表达式object# locale来根据上下文区域设置th:class属性。
我试过了
th:class="${#locale}=='en'?'active':''"
th:class="${#locale=='en'}?'active':''"
它们的结果都是false,但是当我用:text="${#locale}打印它时,我得到了正确的locale代码(en,es)。
知道如何比较#locale对象和locale代码吗?
根据David_Garcia张贴的答案,我可以这样解决我的问题:
th:class="__${#locale}__=='en'?'active':''
这是一个问题,我告诉家伙的thymeleaf时间以前
在与"en"比较之前,需要先解析#locale
。你可以在你想要首先解析的表达式的开头和结尾加上2个下划线。在你的例子中是这样的:
th:call="$({__#locale__}=='en'?'active':'')"
我是这样用的
th:text="${#locale.toString()}=='in'?'active':'inactive'"