为什么struts中CheckBox的值会自动改变

rainfox0010 2005-02-21 10:55:05
小弟刚学struts遇上一个怪问题,不知哪位大侠可以解答?
有一个Jsp,提交之后,在action中检查业务逻辑之后返回运来的Jsp。因为是在Session范围里的,所以form里的状态可以保存。但是jsp页面里有一个CheckBox,非常怪异。

如果不选中它,提交之后处理完回到本页面时,CheckBox的状态 可以保留;
如果 选中它,提交之后处理完回到本页面时,CheckBox的状态也可以保留;
但是在选中的状态下提交,并回到本jsp页面以后,无论是否取消选中,CheckBox会自动被设置为选中,不能被去掉。
在form里这个CheckBox是以String类型保留的。

如果在action中加入这样一段代码就可以解决问题,
if ("on".equalsIgnoreCase(request.getParameter("viewState"))){
((CYU004001frm) form).setViewState("on");
}
else{
((CYU004001frm) form).setViewState("");
}
但是其他的输入项都不需要这种操作。不知道是什么愿因?
不知哪位高手可以解答,不胜感激。
...全文
144 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
usherlight 2005-03-26
  • 打赏
  • 举报
回复
你的Checkbox使用Html:MultiBox标签了吗?
我使用标签,进行操作都正确的。
lightingstorm 2005-03-26
  • 打赏
  • 举报
回复
应该是象 toplchx 说的
我看书上也这么写,在ActionForm 的reset方法中设置checkbox对应属性为false
因为只有选中的checkbox才会放在请求中发送,如果没有在reset中设置false,起初没有被选中的checkbox不会被相应的参数返回到页面中显示,所以返回的时候值为true是可能的
toplchx 2005-03-25
  • 打赏
  • 举报
回复
在Form里的reset方法里,把boolean的值设成false
YuLimin 2005-03-12
  • 打赏
  • 举报
回复
但是在选中的状态下提交,并回到本jsp页面以后,无论是否取消选中,CheckBox会自动被设置为选中,不能被去掉。

你这个回是怎么个回法?浏览器的前进与后退吗?
rainfox0010 2005-02-25
  • 打赏
  • 举报
回复
没人理,555
rainfox0010 2005-02-22
  • 打赏
  • 举报
回复
你也碰到过这样的问题?
以梦为马 2005-02-22
  • 打赏
  • 举报
回复
up

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧