输出数组:
定义: String[] propertyNames=new String[100]
<select id="matchProperties" name="matchProperties">
<s:iterator value="propertyNames">
<option value="<s:property/>">
<s:property/>
</option>
</s:iterator>
</select>
输出List<String>:
初始select选中项,并且迭代fee=List<String>
<select id="productFee" name="productFee" class="sel_style_w_180">
<s:iterator value="fee" status="dex">
<s:set name="index" value="#dex.getIndex()"/>
<option value="<s:property value="fee.get(#index)"/>"
<s:if test="productFee == fee.get(#index)">
selected="selected"
</s:if>
>
<s:property value="fee.get(#index)"/>
</option>
</s:iterator>
</select>
定义: String[] propertyNames=new String[100]
<select id="matchProperties" name="matchProperties">
<s:iterator value="propertyNames">
<option value="<s:property/>">
<s:property/>
</option>
</s:iterator>
</select>
输出List<String>:
初始select选中项,并且迭代fee=List<String>
<select id="productFee" name="productFee" class="sel_style_w_180">
<s:iterator value="fee" status="dex">
<s:set name="index" value="#dex.getIndex()"/>
<option value="<s:property value="fee.get(#index)"/>"
<s:if test="productFee == fee.get(#index)">
selected="selected"
</s:if>
>
<s:property value="fee.get(#index)"/>
</option>
</s:iterator>
</select>
- <s:iterator value="list" status="stts">
- <s:property value="list[#stts.index][0]"/>
- <s:property value="list[#stts.index][1]"/>
- </s:iterator>
<s:iterator value="list" status="stts">
<s:property value="list[#stts.index][0]"/>
<s:property value="list[#stts.index][1]"/>
</s:iterator>
有的时候查询数据库的时候,比如"select a.id , a.name from Account a",查询结果返回的是集合,集合里封装的是数组.用了上面的技术,就可以显示了.
从上面的例子可以看出,status的用处是很大的,所以想不到怎么直接迭代的时候,可以通过status的参数来间接迭代.
下面是转载的内容:
引用
1、输出session中的值
a. <s:property value="#session['key']"/>
b. ${sessionScope.key}
2、获取session中的值后判断
<s:if test="#session['key']==null">
3、输出Action中的属性值
<s:property value="property"/>
4、输出国际化文件中的值
a. <s:text name="key"/>
b. ${getText("key")}
5、输出Action中的消息
<s:actionmessage />
6、输出Action中的错误
<s:actionerror/>
7、迭代输出集合
<s:iterator id="book" value="books" status="index">
<!---输出当前元素的属性-->
<s:property value="property"/>
<!---输出当前迭代元素的索引-->
<s:property value="#index.index"/>
<!---输出当前迭代了几个元素-->
<s:property value="#index.count"/>
<!---返回当前迭代元素的索引是否为奇数-->
<s:property value="#index.odd"/>
<!---返回当前迭代元素的索引是否为偶数-->
<s:property value="#index.event"/>
<!---返回当前元素是否为第一个-->
<s:property value="#index.first"/>
<!---返回当前元素是否为最后一个-->
<s:property value="#index.last"/>
</s:iterator>
8、定义页面变量
<!---将分页Bean的属性放入Stack Context-->
<s:set name="count" value="%{pager.totalPages}"/>
<!---利用Struts2标签访问-->
<s:property value="#count"/>
<!---利用OGNL表达式访问-->
${pageScope.count }
<!---利用Java代码访问-->
<%
Object obj = pageContext.getAttribute("count");
int mycount = Integer.parseInt(obj.toString());
for(int i =0;i<mycount;i++){
out.print(i+1);
}
%>
a. <s:property value="#session['key']"/>
b. ${sessionScope.key}
2、获取session中的值后判断
<s:if test="#session['key']==null">
3、输出Action中的属性值
<s:property value="property"/>
4、输出国际化文件中的值
a. <s:text name="key"/>
b. ${getText("key")}
5、输出Action中的消息
<s:actionmessage />
6、输出Action中的错误
<s:actionerror/>
7、迭代输出集合
<s:iterator id="book" value="books" status="index">
<!---输出当前元素的属性-->
<s:property value="property"/>
<!---输出当前迭代元素的索引-->
<s:property value="#index.index"/>
<!---输出当前迭代了几个元素-->
<s:property value="#index.count"/>
<!---返回当前迭代元素的索引是否为奇数-->
<s:property value="#index.odd"/>
<!---返回当前迭代元素的索引是否为偶数-->
<s:property value="#index.event"/>
<!---返回当前元素是否为第一个-->
<s:property value="#index.first"/>
<!---返回当前元素是否为最后一个-->
<s:property value="#index.last"/>
</s:iterator>
8、定义页面变量
<!---将分页Bean的属性放入Stack Context-->
<s:set name="count" value="%{pager.totalPages}"/>
<!---利用Struts2标签访问-->
<s:property value="#count"/>
<!---利用OGNL表达式访问-->
${pageScope.count }
<!---利用Java代码访问-->
<%
Object obj = pageContext.getAttribute("count");
int mycount = Integer.parseInt(obj.toString());
for(int i =0;i<mycount;i++){
out.print(i+1);
}
%>