在下面的百万富翁代码中,我想将列表produtos
中显示的项目数限制为特定数字:
<div class="col-xs-6 col-lg-4" th:each="item2 : ${produtos}" th:if="${item.getId() == item2.getCategoria().getId()}">
<h2 th:text="${item2.getNome()}"></h2>
<div class="row">
<div class="col-xs-6 col-md-3">
<a th:href="@{/produto/__${item2.getId()}__.htm}" class="thumbnail">
<img th:src="@{/Produto/icone__${item2.getId()}__.jpeg}" width="64" height="64" th:alt="${item2.getNome()}"/>
</a>
</div>
</div>
<p th:text="${#strings.substring(item2.getDescricao(), 0, 140)}"></p>
<p><a class="btn btn-default" th:href="@{/produto/__${item2.getId()}__.htm}" role="button">Detalhes »</a></p>
</div>
但在官方文档中,我无法找到任何说明如何操作的内容。任何人都可以给出任何暗示吗?
更新
我尝试解决此问题,将其添加到我的代码中:
th:if="${itemStat.index < NUM}"
最终的代码是:
<div class="col-xs-6 col-lg-4" th:each="item2 : ${produtos}" th:if="${item2Stat.index < NUM}" th:if="${item.getId() == item2.getCategoria().getId()}">
但是我收到了这个错误:
org.xml.sax.SAXParseException: the value of the attribute "th:if" associated to an element "null" shouldn't have the character '<'.
答案 0 :(得分:1)
您可以在th:每个属性中使用第二个参数,例如:
<div class="col-xs-6 col-lg-4" th:each="item2, stat : ${produtos}" th:if="${item.getId() == item2.getCategoria().getId()}">
然后您可以访问此属性中的其他数据。这里有一个完整的解释: http://www.thymeleaf.org/doc/usingthymeleaf.html#iteration 在主题6.2下
答案 1 :(得分:0)
我设法解决了这个问题,将其添加到我的代码中:
th:each="item2 : ${#numbers.sequence(1,3)}"