来者有分!关于struts的tag能否作判断! 资源文件要在struts-config内配置<message-resources null="true" parameter="com.un.platform.struts.ApplicationResources" /> 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 第一个问题也很简单把每一行的数据存入一个bean,有多少列bean就有多少个属性。然后把这些bean放入一个ArrayList的容器,在Struts的action内把这个容器放入request在jsp中<table><logic:iterate> <tr> <td><bean:write/></td> <td><bean:write/></td> </tr></logic:iterate></table>具体的logic:iterate和bean:write标记的配置可以参见struts的各类资料 你可以自己写个Tag嘛,又不是很难 一个例子:定义一个用于存放每一行数据的bean:class Info{ private String a; private String b; public String getA(){ return a; } public void setA(String a){ this.a = a; } public String getB(){ return b; } public void setB(String b){ this.b = b; }}在Action中:Info info1 = new Info();Info info2 = new Info();info1.setA("zhangsan");info1.setB("35");info2.setA("lisi");info2.setB("55");ArrayList infos = new ArrayList();infos.add(info1);infos.add(info2);request.setAttribute("myInfo",infos);到jsp后:<table> <logic:iterate id="item" name="myInfo" type="Info"> <tr> <td><bean:write name="item" property="a"/></td> <td><bean:write name="item" property="b"/></td> </tr> </logic:iterate></table> 如上所说用<logic:iterate>标签就可以处理 如果循环20行,就要做20个bean?这样也太可怕了吧,还有两个记录就要换行的问题 谁说要做20个bean的,一个就可以了。举个例子,你有一个数组data[]装有你的数据,要实现你的要求。这里用到上边定义的那个Info类。ArrayList infos = new ArrayList();for(int i = 0; i < data.length; i++){ Info info = new Info(); info.setA(data[i]); info.setB(data[++i]); infos.add(info);}request.setAttribute("myInfo",infos);到jsp里循环显示这个info<table> <logic:iterate id="item" name="myInfo" type="Info"> <tr> <td><bean:write name="item" property="a"/></td> <td><bean:write name="item" property="b"/></td> </tr> </logic:iterate></table> squares(Struts的垃圾Tag死也不用!) 你说2个记录就要换行,是不是说你2条记录都显示在一行里1:你可以使用jsp的循环处理,不一定非要用tag啊2:就是楼上写的方法,把2条记录做成一条记录,然后再循环,比如你原来100条,就作成50条,每条包含原来的2条3:干脆一条一行,然后处理一下,分页显示得了 呵呵明白你的意思了,谢谢你们两个,真是热心啊,你说得没错啊,不过我不想在jsp里面放任何代码所以才烦恼的,其实我觉得用了struts的tag以后如果要升级就很麻烦了,而且那么多逻辑判断,说实话我觉得页面更加乱了,唉 比如,我得页面是一个田字形显示记录的方法,取出来的数据,怎么在左边和右边的表格里面各放一个?我就是不明白这种地方怎么作struts,左边的表格里面放个循环?右边的也放一个?这样不是乱了么? 刚才看了一下,好多朋友用velocity解决问题,不知道大家怎么看 为什么页面不刷新? jsp页面向struts2的action传集合值的问题 一个很难的正则表达式 有关session失效的问题(急) 突然发觉自己好菜,自贬以求提高!(2) 为.net正名,高手都进来:j2ee所谓的企业级优势,在.net下对应的实现方法! 请问这种形式是什么意思 请问大家关于RMIException的问题 急急JDataStore中的Serial number和Key是????????????? hibernate配置oracle后无法查询 我写了一个小程序,帮我看看对不 jboss中配置cmp的困惑(cmp映射到另一个表中去了)????
把每一行的数据存入一个bean,有多少列bean就有多少个属性。
然后把这些bean放入一个ArrayList的容器,在Struts的action内把这个容器放入request
在jsp中
<table>
<logic:iterate>
<tr>
<td><bean:write/></td>
<td><bean:write/></td>
</tr>
</logic:iterate>
</table>
具体的logic:iterate和bean:write标记的配置可以参见struts的各类资料
定义一个用于存放每一行数据的bean:
class Info{
private String a;
private String b;
public String getA(){
return a;
}
public void setA(String a){
this.a = a;
}
public String getB(){
return b;
}
public void setB(String b){
this.b = b;
}
}
在Action中:
Info info1 = new Info();
Info info2 = new Info();
info1.setA("zhangsan");
info1.setB("35");
info2.setA("lisi");
info2.setB("55");
ArrayList infos = new ArrayList();
infos.add(info1);
infos.add(info2);
request.setAttribute("myInfo",infos);
到jsp后:
<table>
<logic:iterate id="item" name="myInfo" type="Info">
<tr>
<td><bean:write name="item" property="a"/></td>
<td><bean:write name="item" property="b"/></td>
</tr>
</logic:iterate>
</table>
这里用到上边定义的那个Info类。
ArrayList infos = new ArrayList();
for(int i = 0; i < data.length; i++){
Info info = new Info();
info.setA(data[i]);
info.setB(data[++i]);
infos.add(info);
}
request.setAttribute("myInfo",infos);
到jsp里循环显示这个info
<table>
<logic:iterate id="item" name="myInfo" type="Info">
<tr>
<td><bean:write name="item" property="a"/></td>
<td><bean:write name="item" property="b"/></td>
</tr>
</logic:iterate>
</table>
你说2个记录就要换行,是不是说你2条记录都显示在一行里
1:你可以使用jsp的循环处理,不一定非要用tag啊
2:就是楼上写的方法,把2条记录做成一条记录,然后再循环,比如你原来100条,就作成50条,每条包含原来的2条
3:干脆一条一行,然后处理一下,分页显示得了