Jsp页面无法显示List数值debug4天经历-dayFour

本文详细阐述了在优快云论坛上遇到的问题,即使用AJAX方式提交请求导致页面不刷新的现象。通过将AJAX改为表单提交方式,问题得以解决。同时,文章对比了JSP页面数据交互的三种方案,推荐使用JSTL core标签。此外,还分析了在使用Struts框架时,action代码中直接输出response导致的问题,以及如何解决该问题。最后,文章总结了JSP页面数据交互应采用AJAX方式,并提出了使用message来判断页面刷新的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

csdn 上看了一个讨论帖 ,意识到问题可能出在页面的结构上,页面最后还是以ajax方式提交的请求。ajax不刷新页面,所以虽然有了新的页面,但是什么也不改变。

所以把ajax方式改成form 表单提交 ,问题应该就解决了。

改为form 提交表单。结果页面还是没有刷新,并且每提交一次form 浏览器就自动下载

一个gm!executeGM (12).action的文件,点了12次,就有了12个这样的action文件,里面只有4个字节  “null”;

有点绝望的感觉。


决定自己重新写个JSP 页面。

重写了JSP页面,也请求 executeGM .action  , 同样问题也出现了。 可见action 有问题 !!。

检查action 代码,发现

在抽象类中abstractAction中有这么一段代码:

         HttpServletResponse response=super.getResponse();

try {
PrintWriter pw=response.getWriter(); 
StringBuilder sb=new StringBuilder();
sb.append(result.getMessage());
pw.write(sb.toString());
pw.close();
} catch (IOException e) {
e.printStackTrace();
}


程序response 直接输出了,所以没有跳转回浏览器。具体为什么不能用response 我还不完全清楚原理。(servlet 相关的东西)

注释掉上面一段代码,问题就解决了,jsp页面终于可以刷新了。


总结一下:

jsp页面遍历list 可以有三种方案

java 代码 + 静态页面 。 可读性差,编写麻烦。但是debug方便,可以深入循环内部

jstl core标签 。 简洁方便。foreach 就行

struts s 标签。  相对c 复杂一点点。iterator ,我个人有点不习惯。

推荐使用 jstl core标签 。


jsp页面简单的数据交互应该采取ajax方式来实现。form 用于返回大量的数据的情况。

在页面加入message ,这种方式能够比较好的判断页面刷新情况。


structs 的 annotiaon ,spring的 annotion 都能 极大的简化 xml 配置文件的书写 。应该了解,并使用。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值