checkbox 和 multibox

1.checkbox

在formbean的属性最好是用String[]

FormBean:
public class LoginForm extends ActionForm {
 private String password;
 private String username;
 private String[] hobby;
接着一些Getters & Setters

Action:
 public ActionForward execute(...) {
  LoginForm loginForm = (LoginForm) form;
  for(int i = 0; i < loginForm.getHobby().length; i++) {
       System.out.println(loginForm.getHobby()[i]);
    }
 }

JSP:
<html:form action="/login">
   Username : <html:text property="username"/><br/>
   password : <html:password property="password"/><br/>
   Hobby:<br/>
   <html:checkbox property="hobby" value="Java">Java</html:checkbox>
   <html:checkbox property="hobby" value="VC">VC</html:checkbox>
   <html:checkbox property="hobby" value="VB">VB</html:checkbox>   
   <html:submit/><html:cancel/>
  </html:form>

 

如何让checkbox框默认是选中的,一般情况
下都是当formbean里面该property的值和标签上value给定的值相等的时候,生成的jsp页面上才是选中的,其实,还有几种情况都可以使标签初始就是选中的,formbean里面该property的值设为
1.on
2.yes
3.true
4.等于标签上value指定的值,
4种情况下,都可以达到这个目的。1,2,3三种方法将无条件的把checkbox置成checked,在有些非常规的情况下,这3种还是有意义的。
例:
action中对formbean的设置

form.setTest_chk("on");
或form.setTest_chk("yes");
或form.setTest_chk("true");
或form.setTest_chk("1");
jsp中
<html:checkbox property="test_chk" value="1"/>

浏览器中生成的代码
<input type="checkbox" name=sumi_nnyu" value="1" checked="checked">
上面四种情况都会,都会是相同的结果。当然,在1,2,3种情况时,<html:checkbox property="test_chk" value="1"/> 中的value属性不论为什么,生成的html都会是checked的。

當要對checkbox進行編輯操作時,在頁面標簽中設置value="1", 在formbean中使用
reset()初始化checkbox的值為"0",然后在數據庫中取出checkbox屬性的值,隨后form.setCheckbox(), 如果取出來的值set到form之后與頁面中的value值相等,那么該checkbox的選擇性為checked,否則為不選擇狀態。

 

----------------------------------------------------------------------------------------

2.multibox

<html:multibox property="idMultibox" value="1245"  name="bqManagerForm"></html:multibox>

formbean:

private String[] idMultibox = new String[0];

数组中的值与页面中的value相同,则默认选中!

你可能感兴趣的:(html,jsp,浏览器,vb,vc++)