请教jsp界面数据循环换行问题 50
从后台读出的数据list={00000411,伦敦,切尔西,斯坦福桥,00000415,西班牙,皇家马德里,伯纳乌,00000142,意大利,AC米兰,圣西罗};list...
从后台读出的数据list={00000411,伦敦,切尔西 ,斯坦福桥, 00000415 ,西班牙, 皇家马德里 ,伯纳乌 ,00000142, 意大利, AC米兰, 圣西罗};list的长度是不固定的(这里是3条数据)。想要弄成下面这种格式,每行都是以数字开始的,字段的长度是不固定的用cols表示(下面例子是4个字段),每行最后还有个修改(这个是固定的,每行后面都有)。求帮忙写个jsp界面。字段的长度可以用list.size();表示,值可以用list.get(i);表示
00000411 伦敦 切尔西 斯坦福桥 修改
00000415 西班牙 皇家马德里 伯纳乌 修改
00000142 意大利 AC米兰 圣西罗 修改 展开
00000411 伦敦 切尔西 斯坦福桥 修改
00000415 西班牙 皇家马德里 伯纳乌 修改
00000142 意大利 AC米兰 圣西罗 修改 展开
4个回答
展开全部
怎么可能,list又不会自动识别,你往list里面add什么,它就会按着hashcode的顺序添加下去,除非你把里面的值全部迭代出来,然后再进行判读和处理,不过这得多难和麻烦啊?!
你应该采用"键-值对"的方式存在值。
----------------------------------------------------------
既然你是要求以数字作为第一列,那你就应该以数值作为key,
比如,你应该new一个Map来存储这些信息:
Map<key,Map<key,Map<String,String>>> map = new HashMap<key,<key,Map<key,Map<String,String>>>();
存入的时候怎么存,应该不用我怎么说明了吧。大概就是
Map<"00000411",Map<"伦敦",Map<"切尔西","斯坦福大桥">>> 就是这样存入,然后在JSP迭代出来的时候,你就按照你的想法一列一列的迭代出来就行。
如:
<table>
<s:iterator value="map" id="m">
<tr>
<td><s:property value="#m.key" /></td> 第一列 将输出数字,如“00000411”
<s:iterator value="value" id="address">
<td><s:property value="#address.key" /></td> 第二列 将输出如:伦敦
<s:iterator value="value" id="foo">
<td><s:property value="#foo.key" /></td> 第三列 将输出如:切尔西
<td><s:property value="#foo.value" /></td> 第四列 将输出如:斯坦福桥
</s:iterator>
</s:iterator>
</tr>
</s:iterator>
</table>
其实用两层map就可以了,“切尔西 斯坦福桥 ”这样的数据,你可以根据map的Key为“伦敦”,将他们放入List中就可以了。
你应该采用"键-值对"的方式存在值。
----------------------------------------------------------
既然你是要求以数字作为第一列,那你就应该以数值作为key,
比如,你应该new一个Map来存储这些信息:
Map<key,Map<key,Map<String,String>>> map = new HashMap<key,<key,Map<key,Map<String,String>>>();
存入的时候怎么存,应该不用我怎么说明了吧。大概就是
Map<"00000411",Map<"伦敦",Map<"切尔西","斯坦福大桥">>> 就是这样存入,然后在JSP迭代出来的时候,你就按照你的想法一列一列的迭代出来就行。
如:
<table>
<s:iterator value="map" id="m">
<tr>
<td><s:property value="#m.key" /></td> 第一列 将输出数字,如“00000411”
<s:iterator value="value" id="address">
<td><s:property value="#address.key" /></td> 第二列 将输出如:伦敦
<s:iterator value="value" id="foo">
<td><s:property value="#foo.key" /></td> 第三列 将输出如:切尔西
<td><s:property value="#foo.value" /></td> 第四列 将输出如:斯坦福桥
</s:iterator>
</s:iterator>
</tr>
</s:iterator>
</table>
其实用两层map就可以了,“切尔西 斯坦福桥 ”这样的数据,你可以根据map的Key为“伦敦”,将他们放入List中就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-22
展开全部
后台返回的数据,应该按页面要求返回,才好写程序。
可以按JSON的格式,返回,页面js就很好处理了。
可以按JSON的格式,返回,页面js就很好处理了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<c:forEach items="${list}" var="entity">
${entity.id}…</br>
</c:forEach>
注意把list放入值栈里
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>在jsp页面加上这句话
${entity.id}…</br>
</c:forEach>
注意把list放入值栈里
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>在jsp页面加上这句话
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<table border="4px" bordercolor="red">
<c:forEach items="${list }" var="list" varStatus="count">
<tr>
<td>${list }</td>
</tr>
</c:forEach>
</table>
<c:forEach items="${list }" var="list" varStatus="count">
<tr>
<td>${list }</td>
</tr>
</c:forEach>
</table>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询