Thymeleaf“或”操作员:如果

时间:2018-04-24 15:49:35

标签: html thymeleaf

我想知道在百里香中有一个Or运算符的正确语法。

我的解决方案是基于这个堆栈帖子:

Thymeleaf - boolean operators

最高投票答案使用“或”。

我目前的代码:

 th:if="${not #strings.startsWith(inbox?.status, 'P')}"

检查inbox.status是否以p开头,如果是这样的话,将显示文本,这样可以正常工作。

现在我想检查收件箱状态是否也不以“App”开头,如下所示:

th:if="${not #strings.startsWith(inbox?.status, 'P') or not #strings.startsWith(inbox.status, 'App')}"

但这无所事事。

1 个答案:

答案 0 :(得分:0)

您可以使用OR||。但是,在你的情况下,你表达的逻辑不正确。

Status    A                 B                   !A || !B
          startsWith('P')   startsWith('App')   
Pending   true              false               true
App       false             true                true
Something false             false               true

我个人会写这个(请注意我使用th:unless而不是th:if):

th:unless="${#strings.startsWith(inbox?.status, 'P') OR #strings.startsWith(inbox?.status, 'App')}"