struts标签<s:property>和<s:iterator>

1.

<body>

<s:property value="#request.other"/>
迭代List或数组  <ol> <s:iterator value="#request.booklist" var="book"> <li><s:property value="book"/></li> </s:iterator> </ol> </body>

必须用<s:property>才能输出值栈中的值,<s:iterator>可以替代JSTL中的<c:forEach>标签

<ol>
   <c:forEach var="book" items="${booklist}">
   	<li>${book }</li>
   </c:forEach>
</ol>

<s:property value="Action属性名">还可以输出Action的属性值(Action必须通过转发的方式到该jsp页面才可)

2.如果迭代的对象是Bean的数组或List,两种方法:

 <ol>
  <s:iterator value="booklist" >
    <li><s:property value="bookname"/>
    <s:property value="price"/>
    </li>
  </s:iterator>
</ol>
	
 <ol>
  <s:iterator value="#request.booklist" var="book">
    <li><s:property value="#book.bookname"/>
    <s:property value="#book.price"/>
    </li>
  </s:iterator>
</ol>

注意前提是Action以请求转发的方式转到jsp页面

3.迭代的对象是Map<String>

 <ol>
  <s:iterator value="amap" var="e">
    <li><s:property value="#e.key"/>
   <s:property value="#e.value"/>
    </li>
  </s:iterator>
</ol>

4.迭代的对象是Map<[JavaBean对象]>

<s:property value="#e.value.属性值"/>

5.隔行换色等效果

<s:iterator status="status"> 

<s:if test="#status.odd"></s:if>

<s:else></s:else>

</s:iterator>

6.带条件迭代

 <ol>
  <s:iterator value="booklist.{?#this.price>50}" >
    <li><s:property value="name"/>
   <s:property value="price"/>
    </li>
  </s:iterator>
</ol>

7.迭代JavaBean的某一个属性

 <ol>
  <s:iterator value="booklist.{price}" >
    <li><s:property />
    </li>
  </s:iterator>
</ol>

 

 

 

posted @ 2011-12-14 17:35  tazi  阅读(1267)  评论(0编辑  收藏  举报