有条件地关闭Thymeleaf中的标签


问题内容

我需要有条件地关闭Thymeleaf模板中的标签。说,在迭代某些元素集合期间,我必须将其中的一些元素包装为单个<div>

<div>...element1, element2, element3...</div>
<div>...element4...</div>
<div>...element5, element6...</div>

如果存在某种条件的标签关闭方式,则可以将其存档。但是我显然不能写信</div th:if="...">。如果是这样,jsp我可以轻松地写一些类似的内容:

<%if (condition) {%></div><%}%>

任何想法如何解决这个问题?

编辑 精确地说,我的 元素 不仅仅是字符串,它们是复杂的内部html块。


问题答案:

我找到了解决方法。应该包装为单个块的一系列块应<div>在模型中表示为单独的列表。说,我有Element描述我的element街区的课。因此,我的模型应为:

List<Element> elementGroups

我必须为其创建双循环:

<div th:each="group : ${elementGroups}">
    <th:block th:each="element : ${group}">
       ...
    </th:block>
</div>