我想根据内容显示(或不显示)文本。例如,如果status等于ACCEPTED,我想显示这个词,否则不要。我所拥有的是:
<h2>Background Image</h2>
<div class="bg">
<div class="btn">Button</div>
<button type="button">Button</button>
</div>
<h2>Before Pseudo Element Background Image</h2>
<div class="pseudo">
<div class="btn">Button</div>
<button type="button">Button</button>
</div>
但看起来它并没有这样做。
答案 0 :(得分:5)
@ ak38您发布的解决方案工作正常但不完全正确。如果你想比较枚举,你应该使用这种表示法:
<td th:if="${trip.tripStatus == T(my.package.Status).ACCEPTED}" th:text="${trip.tripStatus}"></td>
如果由于某种原因,另一个程序员将此枚举从ACCEPTED重命名为ACCEPT,那么您的代码将无法正常工作并且从未满足条件,而上述版本将抛出异常,通知视图未针对该更改做好准备。
答案 1 :(得分:1)
希望你能解决这个问题。但无论如何,我正在发布解决方案,它可能会帮助其他人。如果要将ENUM类型与String进行比较,请使用toString
方法将ENUM类型转换为String。
<td th:if="${#strings.toString(trip.tripStatus)} == 'ACCEPTED'" th:text="${trip.tripStatus}"></td>