[英]How to programmatically draw blocks of N elements using an Iterator
假設,我想通過Struts迭代器實現這一點:
<div class="carousel-inner">
<div class="active item">
<div class="row-fluid">
<ul class="thumbnails">
<li class="span3"><a href="#"><img src="images/sample/clients/client1.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client2.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client3.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client4.png"></a></li>
</ul>
</div>
</div>
<div class="item">
<div class="row-fluid">
<ul class="thumbnails">
<li class="span3"><a href="#"><img src="images/sample/clients/client4.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client3.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client2.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client1.png"></a></li>
</ul>
</div>
</div>
<div class="item">
<div class="row-fluid">
<ul class="thumbnails">
<li class="span3"><a href="#"><img src="images/sample/clients/client1.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client2.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client3.png"></a></li>
<li class="span3"><a href="#"><img src="images/sample/clients/client4.png"></a></li>
</ul>
</div>
</div>
</div>
這是我嘗試過的:
<div class="carousel-inner">
<div class="active item">
<div class="row-fluid">
<ul class="thumbnails">
<s:iterator value="members" begin="0" end="3">
<li class="span3"><a href="#"><img src="<s:property value='imageUrlPrefix' /><s:property value='imageName'>" /></a></li>
</ul>
</div>
</div>
<div class="item">
<div class="row-fluid">
<ul class="thumbnails">
<s:iterator value="members" begin="3" end="7">
<li class="span3"><a href="#"><img src="<s:property value='imageUrlPrefix' /><s:property value='imageName'>" /></a></li>
</ul>
</div>
</div>
</div>
我希望我的struts迭代器創建每個包含4個列表項的項類。 一個類填充了4個列表項后,迭代器必須創建另一個項類。 我該如何實現?
謝謝
您可以使用module
運算符( 如此答案中所述 )輕松實現此目標:
<div class="carousel-inner">
<div class="active item">
<div class="row-fluid">
<ul class="thumbnails">
<s:iterator value="members" status="ctr" >
<li class="span3">
<a href="#">
<img src="<s:property value='imageUrlPrefix' />
<s:property value='imageName'>" />
</a>
</li>
<s:if test="%{#ctr.count % 4 == 0}" >
</ul>
</div>
</div>
<div class="item">
<div class="row-fluid">
<ul class="thumbnails">
</s:if>
</s:iterator>
</ul>
</div>
</div>
</div>
注意:要將active
類設置為正確的項目,請在迭代器內部使用<s:if>
在外部使用另一個<s:if>
來檢查它是否是第一個被激活的元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.