jimingminlovefly

          統計

          最新評論

          Struts2的s:generator和s:iterator的合用

          經驗1<select name="rooms" >
                           <s:generator val="1,2,3,4,5,6" separator="," id="numbers">
                            <
          s:iterator value="#numbers" id="number">
                             <option value='<s:property value="number"/>'><s:property value="number"/>間</option>                 
                            </s:iterator> 
                           </s:generator>                                  
                           </select>

          經驗2<s:generator val="%{'a,b,c,d,e,f,g,h,i,j'}" count="#request.hotel.star" separator=",">
                              <s:iterator><img src="images/star.gif" /></s:iterator>
                             </s:generator>

          generator標簽,該標簽可以將指定字符串按指定分隔符分割成多個字串。生成的多個字串可以用iterator標簽進行迭代輸出。可以這么理解:generator標簽將一個字符串轉換成一個List集合。在該標簽體內,整個臨時生成的集合將為Valuestack的頂端,但一旦該標簽結束,生成的集合將被移除Valuestackgenerator標簽有如下幾個屬性:

          1count屬性:指定生成集合中元素的總數。可選屬性。

          2val屬性:必填屬性,指定被解析的字符串。

          3separator屬性:這是一個必填屬性,指定用于分割字符串的分隔符。

          4converter屬性:可選屬性,指定一個轉換器,轉換器負責將生成的集合中的每個字符串轉換成對象,通過這個轉換器可以將一個含有分隔符的字符串解析成對象的集合。轉換器必須一個繼承org.apache.struts2.util.IteratorGenerator.Converter的對象。

          5var屬性,可選屬性。如果指定了該屬性,則將生成的集合保存在Stack Context中。如果不指定該屬性,則將生成的集合放入ValueStack的頂端,該標簽一結束,生成的集合就被移除。該屬性也可替換成id


          jsp實例:

           

          1. <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>  
          2. <%@taglib prefix="s" uri="/struts-tags"%>  
          3. <head>  
          4.     <title>使用s:generator生成集合</title>  
          5. </head>  
          6. <body>  
          7. <s:debug/>  
          8.   
          9. <s:generator val="'a,b, c'" separator="," id="iter1">  
          10. </s:generator>  
          11. 使用generator標簽將指定字符串解析成List集合0  
          12. <table border="1" width="240">  
          13. <!-- 在generator標簽內,得到的List集合位于ValueStack頂端 -->  
          14. <s:generator val="'Struts 2權威指南,輕量級Java EE企業應用實戰,  
          15.     瘋狂Ajax講義'" separator="," id="iter">  
          16. <!-- 沒有指定迭代哪個集合,直接迭代ValueStack頂端的集合 -->  
          17. <s:iterator status="st">  
          18.     <tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>  
          19.         <td><s:property/></td>  
          20.     </tr>  
          21. </s:iterator>  
          22. </s:generator>  
          23. </table>  
          24.   
          25. <BR><BR><BR><BR>  
          26. 使用generator標簽將指定字符串解析成List集合1  
          27. <table border="1" width="240">  
          28. <s:iterator status="st" value="#request.iter1" id="name">  
          29.     <tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>  
          30.         <td><s:property value="name"/></td>  
          31.     </tr>  
          32. </s:iterator>  
          33. </table>  
          34.   
          35. <BR><BR><BR><BR>  
          36. 使用generator標簽將指定字符串解析成List集合2  
          37. <table border="1" width="240">  
          38. <s:iterator status="st" value="#iter1" id="name">  
          39.     <tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>  
          40.         <td><s:property value="name"/></td>  
          41.     </tr>  
          42. </s:iterator>  
          43. </table>  
          44. <s:property value="#attr"/>  
          45. <BR>  
          46. <s:property value="#iter"/>  
          47. <BR><BR><BR>  
          48. <a href="s-generator-count.jsp" mce_href="s-generator-count.jsp">s-generator-count.jsp</a>  
          49. </body>  
          50. </html>  

           

          posted on 2011-12-08 10:20 計明敏 閱讀(995) 評論(0)  編輯  收藏 所屬分類: struts

          主站蜘蛛池模板: 武城县| 建德市| 武山县| 宿州市| 威宁| 安图县| 西华县| 万州区| 松桃| 阿勒泰市| 张掖市| 怀化市| 阜城县| 交城县| 浦江县| 安塞县| 滕州市| 密山市| 昌宁县| 清河县| 溆浦县| 永州市| 曲麻莱县| 海盐县| 汝阳县| 乌什县| 鄂温| 新巴尔虎右旗| 天津市| 顺昌县| 招远市| 东乌珠穆沁旗| 平利县| 胶州市| 淳安县| 北川| 筠连县| 金溪县| 乳山市| 黄浦区| 本溪|