2013-08-02 102 views
9

如何使用布爾運算符如andor使用Thymeleaf?Thymeleaf - 布爾運算符

例如,如果我想要顯示錶中的數據,如果只有其中一個條件爲真。

<tr th:if="firstCondition or secondCondition"> 
    <td th:text="${entity.attr1}"</td> 
    <td th:text="${entity.attr2}">Default Value</td> 
</tr> 
+0

'$ {entity.attr1}或$ {entity.attr2}'。與'和'一樣。 –

+0

我需要這樣的東西:。但只有第二個條件起作用。 – Vinicin

+0

這兩個條件都是孤立的 – Vinicin

回答

14

布爾運算符就像那樣工作。你使用'或','和'而不是普通的java命名法。你也可以縮短你的ifs。

你可以試試這個:

<tr th:if="${violation.remainingDebt != 0 or violation.validity}"> 

你需要嵌套起來在同一個大括號,獨立,如果他們是孤立的考慮被測試的邏輯「或」操作。

雖然要小心!如果if傳遞爲true,這將只顯示tr並且它是子元素。

8

而不是使用conditonal運營商&&||表達就像我們在Java和JavaScript中使用的,在Thymeleaf我們使用比較文本ANDOR

OR條件例如:

<div th:if="${fruit.name} == 'Apple OR Orange' "> 
    <!-- fruit's name is either Apple or Orange --> 
</div> 

AND條件例如:

<div th:if="${user.role} == 'ADMIN' AND ${user.property} == 'SPECIAL' "> 
    <!-- User is admin and has SPECIAL previleges --> 
</div>