在Struts 2中,循环显示List中的数据使用什么标签?
用的是iterator标签
<s:iterator value="#request.list" var="user">
<s:property value="#user.name"/>
</s:iterator>
用<logic:iterator>
给你说个例子吧
<logic:iterate id="SubSecond" name="subsecondlist">
<bean:write name="SubSecond" property="subSecondId"/>
</logic:iterate>
logic:iterate id是类的名称 name是你request或session里放的对象
bean:write name是类名 property是属性
先从数据库中提取出数据放在list中
<table>
<%
List list = session.getAttribute("list");
for(int i=0;i<list.size();i++)
{
Flight flight = (Flight)list.get(i);
%>
<tr>
<td><%=flight.get 提取对象中的属性 %></td>
</tr>
<%
}
%>
</table>
用jstl,el输出
jsp页面头加:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
页面中这样取值输出:
<c:forEach items="${后台传来的list}" var="新起变量名">
${新起变量名.属性名 }
</c:forEach>
后台list处理的时候最好使用泛型,这样不要强转类型
方法-:直接在action设置get和set方法,然后在jsp页面中使用iterator迭代输出,但是一定要注意格式。就是被这个格式搞了一下午。
<s:iterator value="list" id="id">
<tr><td><s:property value="#id.number" /></td> //使用标签
<td>${id.name}</td></tr> //使用EL表达式
</s:iterator>
或者是不声明id,直接<s:property value="number" />