Preface
在浏览本文之前,请保证大概了解Struts Tag的一般用法。
Introduction
本文主要讲述struts html tag中的checkbox在jsp page显示时如何显示被选状态。
Section 1 - Requirement
在很多情况下,我们需要让显示给用户看和填充的jsp page的某些text, checkbox等被初始化为特定值,或者根据database里的值来set初值。struts html tag中的text可以通过value attribute来set初值或者根据从database读出来的数据dynamic set初值。但是checkbox却不可以通过其value attribute来set初值,所以必须寻找另外一种方法来解决这个问题。
Section 2 - Solution
1. 可以通过multibox来解决,具体文章可以参考:
http://www.ibm.com/developerworks/cn/java/j-sr3.html
(因为multibox需要form和database的相应设置来实现,而本人早在之前已经把form和database固定下来了,不想去修改,所以暂时也没有研究和应用)
2. checkbox的solution背后需要知道的是,checkbox要显示被选status必须在jsp page相对应的form中set初值,如果只是需要静态设置的developer只要在form中set就可以了,但是如果需要根据database读出来的数据dynamic set初值就必须在access jsp page之前已经把相对应的form set好。所以可以模仿struts-cookbook的example(有需要就在struts的offical website download,如struts-1.3.8-apps.zip)在access jsp page前先经过一个prepareAction,在prepareAction中对jsp page对应的form进行set,具体source较为简单,可以运行struts-cookbook的example查看source。