Thymeleaf如果在String上

jar*_*sik 3 spring thymeleaf

我想根据其内容显示(或不显示)文本.例如,如果status等于ACCEPTED,我想显示这个单词,否则不显示.我有的是:

<td th:if="${trip.tripStatus} == 'ACCEPTED'" th:text="${trip.tripStatus}"></td>
Run Code Online (Sandbox Code Playgroud)

但看起来它不会那样工作.

Mar*_*ski 5

@ ak38您发布的解决方案工作正常但不完全正确.如果您想比较枚举,您应该使用此表示法:

<td th:if="${trip.tripStatus == T(my.package.Status).ACCEPTED}" th:text="${trip.tripStatus}"></td>
Run Code Online (Sandbox Code Playgroud)

如果由于某种原因,另一个程序员将​​此枚举从ACCEPTED重命名为ACCEPT,那么您的代码将无法正常工作并且从未满足条件,而上述版本将抛出异常,通知视图未针对该更改做好准备.