当前位置: 首页 > 知识库问答 >
问题:

如果-else在Thymeleaf怎么办?

丁经略
2023-03-14

在Thymeleaf中执行简单if-els的最佳方法是什么?

我想在Thymeleaf中达到与

<c:choose>
  <c:when test="${potentially_complex_expression}">
     <h2>Hello!</h2>
  </c:when>
  <c:otherwise>
     <span class="xxx">Something else</span>
  </c:otherwise>
</c:choose>
<div th:with="condition=${potentially_complex_expression}" th:remove="tag">
    <h2 th:if="${condition}">Hello!</h2>
    <span th:unless="${condition}" class="xxx">Something else</span>
</div>

你能提出一个更好的方法来实现它吗?

共有1个答案

柴霖
2023-03-14

Thymeleaf具有与 :Thymeleaf 2.0中引入的th:switchth:case属性等效的属性。

它们与您预期的一样工作,默认情况下使用*

xml prettyprint-override"><div th:switch="${user.role}"> 
  <p th:case="'admin'">User is an administrator</p>
  <p th:case="#{roles.manager}">User is a manager</p>
  <p th:case="*">User is some other thing</p> 
</div>

有关语法的快速解释(或Thymeleaf教程),请参见此处。

免责声明:根据StackOverflow规则的要求,我是Thymeleaf的作者。

 类似资料:
  • 在Thymeleaf中有没有更好的方法来做下面的事情? 例如,在django中,它非常简单:

  • 问题内容: 问题答案: 每当Python解释器读取源文件时,它就会做两件事: 它设置了一些特殊变量,例如,然后 它执行文件中找到的所有代码。 让我们看看它是如何工作的,以及它与你有关我们在Python脚本中经常看到的检查问题的关系。 代码样例 让我们使用稍微不同的代码示例来探索导入和脚本的工作方式。假设以下文件位于。 特殊变量 当Python交互程序读取源文件时,它首先定义了一些特殊变量。在这种情

  • 问题内容: 如果我使用注释构造函数参数,但Json没有指定该属性,会发生什么情况。构造函数得到什么值? 如何区分具有空值的属性和JSON中不存在的属性? 问题答案: 总结程序员Bruce和StaxMan的出色答案: 构造函数引用的缺少的属性会分配一个Java定义的默认值。 您可以使用setter方法来区分隐式或显式设置的属性。Setter方法仅针对具有显式值的属性调用。设置方法可以跟踪是否使用布尔

  • 本文向大家介绍如果leader crash时,ISR为空怎么办?相关面试题,主要包含被问及如果leader crash时,ISR为空怎么办?时的应答技巧和注意事项,需要的朋友参考一下 kafka在Broker端提供了一个配置参数:unclean.leader.election,这个参数有两个值: true(默认):允许不同步副本成为leader,由于不同步副本的消息较为滞后,此时成为leader,

  • 我正在尝试使用此链接查看<代码>其他条件,但没有成功。 我的密码是 我的服务电话是newxyz。通用域名格式 如果则调用 如果则调用,而不是 你能告诉我哪里错了吗。

  • 我试图用SpringBoot中的一些数据填充一个thymeleaf模板。我想做的是 我已经尝试了这里提出的两种解决方案:如果属性和特性存在,则显示文本;按照Thymeleaf的呈现顺序,因为< code>group.organization为空,所以不应该显示整个内部< code>td。 还有一个问题,因为蒂梅莱夫抱怨说 我不明白为什么会发生这种情况,因为组对象存在,只是组织为空