有关Struts中的logic:iterate问题
问题描述如下:
我有一个Vector vData变量,里面存有很多Hashtable类型的数据记录(这些记录结构是一样的),现在我要用Struts中的logic:iterate显示Hashtable类型的记录的部分字段值。
比如我的Hashtable的记录结构为:[id,name,password],vData中的记录有[1001,张三,zs1001]、[1002,李四,ls1002]、[1003,王五,ww1003],现在我如何
用logic:iterate现在如下的信息呢?
张三 1001
李四 1002
王五 1003
在此先多谢大家了,问题解决后马上结贴给分!
问题点数:100、回复次数:12Top
1 楼smallbird105(理想实现者)回复于 2003-12-02 16:01:04 得分 20
<%
pageContext.setAttribute("RecordsData",vData);
%>
<logic:iterate id="item" name="RecordsData">
<tr bgcolor="#ECF5FF">
<logic:iterate id="hs" name="item">
<logic:match name="hs" property="key"value="name">
<td><bean:write name="hs" property="value"/></td>
</logic:match>
<logic:match name="hs" property="key"value="id">
<td><bean:write name="hs" property="value"/></td>
</logic:match>
</logic:iterate>
</tr>
</logic:iterate>Top
2 楼gdyx2002(寂寞)回复于 2003-12-02 16:13:06 得分 0
to smallbird105:
我测试你的方法,记录信息数据可以正常显示,就是显示结果的前后位置不对啊,出来的结果是:
1001 张三
1002 李四
1003 王五
按当前的例子来说,完成全部显示要有三次大循环,而每次大循环中又有三次小循环。每一次大循环,<logic:iterate id="hs" name="item">要遍历三次当前的Hashtable,第一次取出值是id,匹配显示'1001',第二次取出值是'张三',配置显示“张三”,而第三次取出的值是'zs1001',没有匹配不显示;以后第二次、第三次类似。
大家快帮想想办法啊,马上就可以要成功了,多谢smallbird105。Top
3 楼lzsbj(黄羊·玫瑰·飞鱼)回复于 2003-12-02 16:13:21 得分 20
<logic:iterate id="currentHashtable" name="hashtableList" type="app.
xx.entity.Hashtable">
<tr>
<td align="center"><%= currentHashtable.getName() %></td>
<td align="center"><%= currentHashtable.getId() %></td>
</tr>
</logic:iterate>
Top
4 楼gdyx2002(寂寞)回复于 2003-12-02 16:31:21 得分 0
to lzsbj(黄羊·玫瑰·飞鱼) :
你的currentHashtable是自己建立的bean吧,这样不通用,我的Hashtable是java.util.Hashtable中,不是自建的bean,更何况,currentHashtable在logic:iterate id="currentHashtable"定义后就能引用了吗?我怎么电脑报错啊?Top
5 楼smallbird105(理想实现者)回复于 2003-12-02 16:48:01 得分 40
<%
pageContext.setAttribute("RecordsData",vData);
%>
<logic:iterate id="item" name="RecordsData">
<tr bgcolor="#ECF5FF">
<logic:iterate id="hs" name="item">
<logic:match name="hs" property="key"value="name">
<td><bean:write name="hs" property="value"/></td>
</logic:match>
</logic:iterate>
<logic:iterate id="hs" name="item">
<logic:match name="hs" property="key"value="id">
<td><bean:write name="hs" property="value"/></td>
</logic:match>
</logic:iterate>
</tr>
</logic:iterate>
to gdyx2002 (寂寞),上面这样能解决你的错位问题,可以正常显示了。Top
6 楼wenddy105(wenddy)回复于 2003-12-02 16:54:26 得分 10
不太懂,不过该问题比较经典,收藏,呵呵,多谢!Top
7 楼Leemaasn(小鸟)回复于 2003-12-02 16:56:57 得分 10
搞定没?
用: smallbird105(快乐鸟)就可以的啊。
颠倒一下显示顺序不就可以了?Top
8 楼gdyx2002(寂寞)回复于 2003-12-02 17:12:26 得分 0
to Leemaasn(他这家伙不怀好意 :P):
问题搞定了,怎么可以颠倒显示顺序呢?有事我们同一个数据有好多种不同的显示啊,多谢你的关注。
我马上结贴!Top
9 楼gdyx2002(寂寞)回复于 2003-12-02 17:13:02 得分 0
to Leemaasn(他这家伙不怀好意 :P):
问题搞定了,怎么可以颠倒显示顺序呢?有事我们同一个数据有好多种不同的显示啊,多谢你的关注。
我马上结贴!Top
10 楼Fzgta(蝈蝈)回复于 2003-12-02 17:17:56 得分 0
收藏!Top
11 楼bigc2001(大C)回复于 2003-12-03 09:08:36 得分 0
楼主,还有其他朋友,虽然已经结了,但我还是有点看法,请堪正:
我认为STRUTS的标签只是起到了显示的作用,无论什么样的数据都应该在后台准备妥当再传递到页面层显示,就象楼主的问题,为什么不在后台把数据框架从新排列呢?
STRUTS的标签已经很让人迷糊的了,如果在使用复杂的控制,我觉的有点问题。Top
12 楼Rabbit8(剑.花.烟雨.江南)回复于 2003-12-23 10:43:17 得分 0
MarkTop
相关问题
- 关于 logic:iterate struts.
- Struts<logic:iterate>问题?
- Struts标签logic:iterate问题.
- Struts 中 logic:iterate 标签的应用。
- 关于struts中logic:iterate的问题,急。
- 请教struts迭代器标签(logic:iterate或者nested:iterate)问题
- struts <logic:iterate>标签的indexId属性是做什么用的
- 请教下班struts的logic:iterate输出数组问题
- struts中 <logic:iterate>标签中,循环内容的选中问题。
- 一个关于struts中logic iterate标签的问题




