首页 新闻 会员 周边

关于jsp页面嵌入的循环java代码的问题:为什么<tr>和<td>标签都随着循环多次输出了呢?

0
悬赏园豆:40 [待解决问题]

我不懂为什么<tr>和<td>标签都随着循环多次输出了呢?该怎么理解这段代码呢?

jsp页面的代码如下:

 

<%
Map<String,Goods> goodsMap=(Map<String,Goods>)application.getAttribute("goodsMap");
%>

<table>
<tr><td>商品名称</td><td>商品价格</td><td>操作</td></tr>

<%
Collection<Goods> goodsColl=goodsMap.values();
for(Goods goods : goodsColl){
%>
<tr> <td><%=goods.getGoodsName() %></td> <td><%=goods.getGoodsPrice() %></td><td><a href="/webDemo3/buy?goodsId=<%=goods.getGoodsId()%>">购买</a></td> </tr>
<%
}
%>

动量的主页 动量 | 初学一级 | 园豆:162
提问于:2015-12-10 21:49
< >
分享
所有回答(3)
0

jsp页面会被解析为java文件,你可以到apache-tomcat-7.0.64\work\Catalina\localhost 目录下找到。apache-tomcat-7.0.64是我的tomcat目录,你的可能不一样。找到之后看java代码就明白了

高山仰止oo | 园豆:210 (菜鸟二级) | 2015-12-10 23:05
0

<tr> <td><%=goods.getGoodsName() %></td> <td><%=goods.getGoodsPrice() %></td><td><a href="/webDemo3/buy?goodsId=<%=goods.getGoodsId()%>">购买</a></td> </tr>

外层的tr拿走。 只给TD 循环赋值就可以了。

冷峻 | 园豆:202 (菜鸟二级) | 2015-12-11 10:15

TR放在循环外

支持(0) 反对(0) 冷峻 | 园豆:202 (菜鸟二级) | 2015-12-11 10:16
0

你把tr放在循环体中,那么有多少个商品,就会输出多少组tr呗。

<%
  Collection<Goods> goodsColl=goodsMap.values();
  for(Goods goods : goodsColl){
    '<tr> <td><%=goods.getGoodsName() %></td> <td><%=goods.getGoodsPrice() %></td><td><a href="/webDemo3/buy?goodsId=<%=goods.getGoodsId()%>">购买</a></td> </tr>'
  }
%>

这样去理解就好了。
幻天芒 | 园豆:37175 (高人七级) | 2015-12-11 13:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册