悟心

          成功不是將來才有的,而是從決定去做的那一刻起,持續(xù)累積而成。 上人生的旅途罷。前途很遠(yuǎn),也很暗。然而不要怕。不怕的人的面前才有路。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            93 隨筆 :: 1 文章 :: 103 評(píng)論 :: 0 Trackbacks
          struts2的s:iterator 可以遍歷 數(shù)據(jù)棧里面的任何數(shù)組,集合等等 以下幾個(gè)簡(jiǎn)單的demo:
          s:iterator 標(biāo)簽有3個(gè)屬性:
              value:被迭代的集合
              id   :指定集合里面的元素的id
              status 迭代元素的索引
          1:jsp頁面定義元素寫法 數(shù)組或list

          <s:iterator value="{'1','2','3','4','5'}" id='number'>
              <s:property value='number'/>A
          </s:iterator>
          打印結(jié)果為: 1A2A3A4A5A
          2:索引的用法
          如果指定了status,每次的迭代數(shù)據(jù)都有IteratorStatus的實(shí)例,它有以下幾個(gè)方法
          int getCount()返回當(dāng)前迭代了幾個(gè)元素
          int getIndex()返回當(dāng)前元素索引
          boolean isEven()當(dāng)然的索引是否偶數(shù)
          boolean isFirst()當(dāng)前是否第一個(gè)元素
          boolean isLast()
          boolean isOdd()當(dāng)前元素索引是否奇數(shù)
          <s:iterator value="{'a','b','c'}" id='char' status='st'>
              <s:if test="#st.Even">
                  現(xiàn)在的索引是奇數(shù)為:<s:property value='#st.index'/>
              </s:if>
              當(dāng)前元素值:<s:property value='char'/>
          </s:iterator>
          3:遍歷map
          value可以直接定義為:
          value="#{"1":"a","2":"b"}"
          每個(gè)元素以都好隔開。元素之間的key和value 冒號(hào)隔開
          value也可以是數(shù)據(jù)棧里面的java.util.Map對(duì)象
          遍歷寫法如下:
          <s:iterator value="map" id="id" status="st">
               key : <s:property value='key'/>
               value:<s:property vlaue='value'/>
          </s:iterator>
          當(dāng)然key 和value 都可以使java 的 Object
          3:遍歷數(shù)據(jù)棧.簡(jiǎn)單的List類,
          List<Attr>
          class Attr{String attrName;String getAttrName(){return "123";}}
          <s:iterator value="label" id="id">
              <s:property value="#id.attrName" />
          </s:iterator>
          當(dāng)然value 還可以寫成 value="%{label}" label可以有.操作
          label的屬性List 可以寫成value="%{label.list}" 相當(dāng)于:getLabel().getList();
          4:遍歷2個(gè)list;
          List<AttrName> attrN {color,size,style}
          List<AttrValue> attrV {red,20,gay}
          這2個(gè)list的元素是一一對(duì)應(yīng)的,一個(gè)attrN對(duì)應(yīng)一個(gè)attrV
          <s:iterator value="%{attrN }" id="id"   status="status">
          index    is : <s:property value='status.index'/>
          attrName is : <s:property value='id'/> or <s:property value='%{id}'/>
          attrName is : <s:property value='%{attrV[#status.index]}'/>
          </s:iterator>  
          posted on 2009-11-20 17:56 艾波 閱讀(210469) 評(píng)論(13)  編輯  收藏 所屬分類: SS2H

          評(píng)論

          # re: struts2的s:iterator 標(biāo)簽 詳解[未登錄] 2013-08-14 18:45 111
          111  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解[未登錄] 2013-08-14 18:46 111
          @111
            回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2013-09-18 14:33 yxd1130@sina.cn
          很不錯(cuò) 但是我想問問的 這個(gè)c:forEach的區(qū)別是什么啊?  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2014-02-05 02:59
          只有用struts2才用iter@yxd1130@sina.cn
            回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2014-03-22 16:37 扯淡
          扯淡玩意。 第一個(gè)例子就報(bào)錯(cuò);  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2014-03-22 16:38 you die
          org.apache.jasper.JasperException: An exception occurred processing JSP page /user.jsp at line 36

          33: </tr>
          34: </s:iterator>
          35: <s:iterator value="{'1','2','3','4','5'}" id='number'>
          36: <s:property value='number'/>A
          37: </s:iterator>   回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2014-07-08 15:42 luguo
          @you die
          36: <s:property value='number'/>A
          加個(gè) "#number"  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解[未登錄] 2014-10-28 14:56 123
          @扯淡
          菜鳥就別亂說  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2015-02-25 11:37 caicai
          @扯淡
          報(bào)錯(cuò)你自己的問題,怎么別人就不報(bào)錯(cuò)?還扯淡?學(xué)東西不是讓你復(fù)制粘貼的,給你個(gè)代碼就算人家真錯(cuò)了,你不能虛心請(qǐng)教下?愛看看不愛看滾  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2015-09-30 15:46 "{'1','2','3','4','5'}"
          "{'1','2','3','4','5'}"換成"{\"1\",\"2\",\"3\",\"4\",\"5\"}"就好了  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2015-12-01 07:37 er
          @yxd1130@sina.cn
          都差不錯(cuò) 如果在session里面獲取 一個(gè)用${}來獲取 一個(gè)用#session.name  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2016-04-29 19:55 werwe
          @caicai
          當(dāng)你們發(fā)生分歧的時(shí)候,應(yīng)該仔細(xì)尋找問題的根源,這樣的話,大家都能提高,而抬杠的話,只能是兩個(gè)人都憋一肚子氣  回復(fù)  更多評(píng)論
            

          # re: struts2的s:iterator 標(biāo)簽 詳解 2016-06-01 08:35 porter
          @you die
          number簽名加#  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 杂多县| 油尖旺区| 如皋市| 九江市| 柏乡县| 丹凤县| 海安县| 孝义市| 吴堡县| 宁晋县| 尤溪县| 金寨县| 洛南县| 隆子县| 高安市| 新沂市| 洛阳市| 崇州市| 靖远县| 准格尔旗| 福安市| 汝南县| 衡东县| 利津县| 灯塔市| 甘德县| 新建县| 太原市| 洛扎县| 苍山县| 贡山| 江北区| 扎鲁特旗| 基隆市| 伊金霍洛旗| 南皮县| 东平县| 油尖旺区| 正蓝旗| 章丘市| 泰宁县|