描述
页面代码有两层循环,一层是分类(手机),二层是数据,但是要对二层的每一类数据做限制,比如只显示3条,那么问题来了,我怎么知道每一个分类已经遍历了3个了呢?
分析
假设第一个分类是智能手机,用分类id过滤,每符合一次,记录值加1,判断记录值等于3就不显示。每次分类循环在初始化下即可实现。
实现
<th:block th:each="fenlei,top:${fenleis}">
<th:block th:with="perModuleSize=${#httpServletRequest.setAttribute('perModuleSize1',0)}">
<div class="category fl">
<h2><span class="tit1 fl" th:text="${fenlei.name}"></span><a class="fr" th:href="@{${fenlei.url}}"
target="_blank">更多>></a></h2>
<ul>
<th:block th:each="content,contentindex:${flcontent}">
<th:block th:if="${(fenlei.id) eq (content.channelId)}">
<th:block
th:with="perModuleSize=${#httpServletRequest.setAttribute('perModuleSize1',#httpServletRequest.getAttribute('perModuleSize1')+1)}"></th:block>
<th:block th:if="${perModuleSize1 le 6}">
<li><a th:href="@{${content.url}}" target="_blank"
th:text="${content.shorttitle}"></a></li>
</th:block>
</th:block>
</th:block>
</ul>
</div>
</th:block>
</th:block>