JSP页面显示List

chenminmin4 2010-10-23 11:19:53
在Action里传递一个list想要迭代显示 结果怎么都出不来。。

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@page import="java.util.List"%>
<%@page import="java.util.ArrayList"%>

<%@taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'studentlist.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<body>
<%
List list=(List)request.getAttribute("list");
List arr=new ArrayList();
%>
<%=list %><br>aaa
<%=arr %>
<a href="studentAdd.jsp">增加学生</a>   
<a href="student!next.action">下一页</a> 
<a href="history.back()">上一页</a> 
<a href="sutdent!list.action">首页</a>
<br><br><br>
<s:property value="#list.studentName"/>
<input type="button" value=" " onclick="return test()">
<center>
<table border="0" cellspacing="5"><col width="70" align="center" valign="middle">
<tr><td > 属 性</td><td>学生编号</td><td>学生姓名</td><td>联系电话</td><td>所属部门</td><td>辅导员电话</td><td>小组编号</td>
</tr>
<s:iterator value="list" status="student">
<tr>
<td>
${list.department} ${list.department}</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td> <s:property value="groupId" /></td>
</tr>
</s:iterator>

</table>
</center>
</body>
</html>


这是我的JSP代码 List显示不为空
...全文
1208 点赞 收藏 40
写回复
40 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
微甜灬呼吸 2010-10-28
错误贴出来 - - ~ !
回复
wangcfxbg 2010-10-28
标签库 c:forEach 最简单 百度一下怎么使用
回复
qq_992784113 2010-10-28
也可以用<c:foreach></c>
回复
softwarexiang120 2010-10-28
肯定是语法有误了。
回复
宁波朱超 2010-10-28
27回的 28號頂一下 我的回復給無視掉了。
回复
gudankangti1987 2010-10-28
补充下

<%@ taglib="c" prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
回复
TearsStoneJava 2010-10-28
el标签导入!
回复
gudankangti1987 2010-10-28
<c:forEach items="list" var="student">
<td>${student.属性名 }</td>
<td>${student.属性名 }</td>
<td>${student.属性名 }</td>
<td>${student.属性名 }</td>
<td>${student.属性名 }</td>
</c:forEach>
回复
zhangliang_88 2010-10-27
[Quote=引用 19 楼 java_news 的回复:]
你用jstl标签取简单
[/Quote]
up 确实很好用
回复
悟缘修渡 2010-10-27
[Quote=引用 11 楼 chenminmin4 的回复:]
楼上各位的方法全用了。。估计是我哪写错了 再贴一次代码 帮我看看 狂郁闷了


我也挺想立马解决结贴。。然后果断去睡觉了。。已经弄一个早上再加半个下午了

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
……
[/Quote]

如果在后台list中方的对象属性为Student student时则直接通过
<s:iterator value="list">
<s:property value="student.studentNo"/>
<s:property value="student.studentName"/>
</s:iterator>
进行获取对象中属性的值。希望对你有帮助
回复
JAVASUNING741 2010-10-27
List list=(List)request.getAttribute("list");
用get,set多好
回复
chongan_wang 2010-10-27
用jstl标签
回复
qianlong_nn 2010-10-27
您这代码能把人给逼疯,,,这样找错误不太容易,,看一下生成的HTML容易些
回复
qq327989741 2010-10-27
List list=(List)request.getAttribute("list");
这个从哪来的。。。
回复
java_news 2010-10-27
你用jstl标签取简单
回复
thy_java 2010-10-27
list 得循环才会输出结果
回复
a605501800 2010-10-27
<s:iterator value="list" var="stu">
<tr>
</td>
<td><s:property value="#stu.studentNo" /></td>
<td><s:property value="#stu.studentName" /></td>
<td><s:property value="#stu.consellorPhone" /></td>
<td><s:property value="#stu.studentPhone" /></td>
<td><s:property value="#stu.groupId" /></td>
</tr>
</s:iterator>

没记错的话,iterator标签是用Var来循环的吧……
回复
pair00 2010-10-27
Struts2中你应该没有定义form,那么页面上的值显示,需要在action 中把实体类的属性定义一下,并配上get和set方法。在页面的显示:
<s:iterator value="#request.list" id="stu">
<tr>
</td>
<td><s:property value="studentNo" /></td>
<td><s:property value="studentName" /></td>
<td><s:property value="consellorPhone" /></td>
<td><s:property value="studentPhone" /></td>
<td><s:property value="groupId" /></td>
</tr>
</s:iterator>
不要忘记红色部分。
回复
lk519186921 2010-10-27
建议你重写,用JSTL是可以实现的,你最好在传值之前先在Action中做一个测试,看看数据传递到页面之前有没有问题,如果传的没问题的话,可以再在页面上定义一个TEXT文本框,指定list中任意一个值,用value="${filedName}"获取一下,如果没错的话就是你的iterator标签使用的错误了,但是标签的使用只是个语法的问题,一般是不会出错的,步步为营,一点点测试,可能就找到自己错哪了。
回复
precious 2010-10-27
用<s:iterator value="#session.list" status="student">试试
回复
加载更多回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2010-10-23 11:19
社区公告
暂无公告