<span class="txt_right">[<s:if test="#session.locale == ‘zh_CN‘"><s:date name="listNews[#stat.index][2]" format="yyyy-MM-dd" /></s:if><s:else><s:date name="listNews[#stat.index][2]" format="dd/MM/yyyy" /></s:else>]</span>
#L.index,即为list的索引 其中L是个IteratorStatus对象 List<User User对象含有name和password属性。 当然你也可以写成: <s:iterator value=list id=user status=L <s:property value=${L.index+1}/、 <s:property value=${user.name}/ </s:iterator <s:iterator value=colorArrayList status=tl <div class=spxz style=cursor: hand; value=<s:property value=‘#tl.index‘/</div </s:iterator iterator标签主要是用于迭代输出集合元素,如list set map 数组等,在使用<s:iterator/标签的时候有三个属性值得我们关注 1. value属性:可选的属性,value属性是指一个被迭代的集合,使用ognl表达式指定,如果为空的话默认就是ValueStack栈顶的集合. 2.id属性:可选属性, 是指集合元素的id 3.status属性:可选属性,该属性在迭代时会产生一个IteratorStatus对象,该对象可以判断当前元素的位置,包含了以下属性方法: int getCount(); 迭代元素个数 int getIndex(); 迭代元素当前索引 boolean getFirst(); 是否为第一个 boolean getEven(); 是否为偶 boolean getLast(); 是否最后一个 bolean getOdd(); 是否为奇 由于iteratorstatus对象并不是ognl的根对象因此访问需要加上 #访问如下例子: <s:iterator value=”{’dd’,‘bb’,‘cc’}” status=”st” <s:if test=”#st.odd” <s:property value=”#st.index”/</s:if </s:iterator 此外:iterator也可以迭代map对象,map对象中有几对key-value 就迭代几次,分别使用 <s:property value=”key”/
假设list集合为A,那就是取出A[begin]到A[end]的值。 <s:iterator value="{‘ab‘,‘bb‘,‘cb‘}" id=‘char‘ status=‘st‘ begin="1" end="2"> <tr> <td><s:property value="char" /> </td> </tr> </s:iterator> 输出结果为 bb cb
<s:iterator id="user" value="#group.teammates" status="st"> <tr> <s:if test="#st.index % 4 == 0"> <td><s:property value="#st.index"/></td> </s:if> </tr> </s:iterator> <s:iterator id="group" value="groups"> <div class="lineOut"> <div class="lineIn odd"> <table> <tr> <td width="20px"><img src="css/images/group.png" border="0" /></td> <td colspan="4"> <a href="javascript:void(0)"><s:property value="#group.name" /></a> [共<s:property value="#group.memberNumber" />人] </td> </tr> <s:iterator id="user" value="#group.teammates" status="st"> <s:if test="0 == #st.index % 4"> <tr> <td></td> <td> <s:property value="#user.name"/>[<a href="javascript:void(0)"><s:property value="#user.email" /></a>] </td> </s:if> <s:elseif test="3 == #st.index % 4"> <td> <s:property value="#user.name"/>[<a href="javascript:void(0)"><s:property value="#user.email" /></a>] </td> </tr> </s:elseif> <s:else> <td> <s:property value="#user.name"/>[<a href="javascript:void(0)"><s:property value="#user.email" /></a>] </td> </s:else> <s:if test="#st.last"> <s:iterator begin="0" end="2 - (#st.index % 4)"> <td></td> </s:iterator> </s:if> </s:iterator> </table> </div><!-- lineIn odd --> </div><!-- lineOut --> </s:iterator>
cmss笔记20140714
时间: 2024-10-15 03:00:29