为什么struts中CheckBox的值会自动改变
小弟刚学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("");
}
但是其他的输入项都不需要这种操作。不知道是什么愿因?
不知哪位高手可以解答,不胜感激。