1 struts标签中有一个循环的标签,iterator标签。iterator双重循环也可以使用。iterator中的var属性表示集合中的元素单元。
如:<s:iterator value="#request.bean.doubleList" var="list1" ><!-- id和var都表示集合中的元素单元,可以互用 -->
<tr>
<s:iterator value="#list1" var="list2">
<td>
<s:property value="#list2"/>
</td>
</s:iterator>
</tr>
</s:iterator>
说明:iterator标签的value属性表示集合值。
var表示集合中的元素单元,可以理解为在循环体中定义了一个变量。在循环时将集合元素中的每个单元元素赋值给这个变量。外围的元素单元可以作为第二重循环的value属性值(第二重循环的集合)
2 作为iterator的双重循环的value的属性值。在java后台中可以用双重list来设置。
如:
bean的属性:
private List<List<String>> doubleList;
action中:
private Example bean;
List<String> list1=new ArrayList<String>();
list1.add("1-1");
list1.add("1-2");
list1.add("1-3");
list1.add("1-4");
List<String> list2=new ArrayList<String>();
list2.add("2-1");
list2.add("2-2");
list2.add("2-3");
list2.add("2-4");
List<String> list3=new ArrayList<String>();
list3.add("3-1");
list3.add("3-2");
list3.add("3-3");
list3.add("3-4");
List<List<String>> doubleList_=new ArrayList<List<String>>();
doubleList_.add(list1);
doubleList_.add(list2);
doubleList_.add(list3);
bean.setDoubleList(doubleList_);
前台jsp:
<s:iterator value="#request.bean.doubleList" var="list1" ><!-- id和var都表示集合中的元素单元,可以互用 -->
<tr>
<s:iterator value="#list1" var="list2">
<td>
<s:property value="#list2"/>
</td>
</s:iterator>
</tr>
</s:iterator>
3 输出可以用struts2的property标签。如:<s:property value="#list2"/> #表示struts2中的OGNL表达式。
总结:strtus2的iterator标签不但可用于循环,还可用于双重循环。
iterator标签的value属性是集合值。
iterator标签的var属性是集合中的单元元素。可以理解为在循环体中定义了一个变量。在循环时将集合元素中的每个单元元素赋值给这个变量。外围的iterator标签的var值可以作为第二重iterator标签的value值。
简单记忆:循环需要循环体中定义变量
如:<s:iterator value="#request.bean.doubleList" var="list1" ><!-- id和var都表示集合中的元素单元,可以互用 -->
<tr>
<s:iterator value="#list1" var="list2">
<td>
<s:property value="#list2"/>
</td>
</s:iterator>
</tr>
</s:iterator>
说明:iterator标签的value属性表示集合值。
var表示集合中的元素单元,可以理解为在循环体中定义了一个变量。在循环时将集合元素中的每个单元元素赋值给这个变量。外围的元素单元可以作为第二重循环的value属性值(第二重循环的集合)
2 作为iterator的双重循环的value的属性值。在java后台中可以用双重list来设置。
如:
bean的属性:
private List<List<String>> doubleList;
action中:
private Example bean;
List<String> list1=new ArrayList<String>();
list1.add("1-1");
list1.add("1-2");
list1.add("1-3");
list1.add("1-4");
List<String> list2=new ArrayList<String>();
list2.add("2-1");
list2.add("2-2");
list2.add("2-3");
list2.add("2-4");
List<String> list3=new ArrayList<String>();
list3.add("3-1");
list3.add("3-2");
list3.add("3-3");
list3.add("3-4");
List<List<String>> doubleList_=new ArrayList<List<String>>();
doubleList_.add(list1);
doubleList_.add(list2);
doubleList_.add(list3);
bean.setDoubleList(doubleList_);
前台jsp:
<s:iterator value="#request.bean.doubleList" var="list1" ><!-- id和var都表示集合中的元素单元,可以互用 -->
<tr>
<s:iterator value="#list1" var="list2">
<td>
<s:property value="#list2"/>
</td>
</s:iterator>
</tr>
</s:iterator>
3 输出可以用struts2的property标签。如:<s:property value="#list2"/> #表示struts2中的OGNL表达式。
总结:strtus2的iterator标签不但可用于循环,还可用于双重循环。
iterator标签的value属性是集合值。
iterator标签的var属性是集合中的单元元素。可以理解为在循环体中定义了一个变量。在循环时将集合元素中的每个单元元素赋值给这个变量。外围的iterator标签的var值可以作为第二重iterator标签的value值。
简单记忆:循环需要循环体中定义变量