有一个listMap需要页面迭代
List<Map<String,object>> listMap = new ArrayList<Map<String,Object>> ();
每次迭代的map如下
Map<String,Object> map =new HashMap<String,Object>();
map.put("column1", "value1");map.put("column3", "value3");map.put("column2", "value2");...
要求按column的序号输出
若map只存3个 页面可写如下
<s:iterator value="listMap" status="infoList" id="listMapid">
<tr>
<td ><s:property value="column1"/></td>
<td ><s:property value="column2"/></td>
<td ><s:property value="column3"/></td>
</tr>
</s:iterator>
若map的数量不固定 如何按顺序取
------解决方案--------------------
页面上可以用<s:if test=""/> 处理逻辑的
------解决方案--------------------
若map的数量不固定
可以将map里的数据取出,放在list中,然后在页面遍历这个list,就不需要按key取值了
------解决方案--------------------
<td ><s:property value="listMapid.key"/></td>肯定是可以的。。。
------解决方案--------------------
思路应该是对的
<s:iterator value="listMap" status="infoList" id="listMapid">
<s:iterator value="listMap" status="#listMapid.keyValue()" id="value">
<tr>
<td ><s:property value="#value"/></td>
</tr>
</s:iterator>
</s:iterator>
我的思路是这样的,没测试过,不知道行不行
------解决方案--------------------
3L的很想试试..
我认为还是用那个<s:if/>标签进行页面的逻辑处理,我在做页面的分页的时候经常用这个
------解决方案--------------------
JSTL标签可以这样直接拿到key、value、
<c:forEach var="bm" items="${data}">
<c:forEach var="b" items="${bm.map}">
${b.key}
${b.value}
</c:forEach>
</c:forEach>
struts的没试过。