jsp文件中如下:
//-----------------------------------------
<html:form action="/checkbox.do" method="post">
<html:multibox property="checkList" value="001"/>001<br/>
<html:multibox property="checkList" value="002"/>002<br/>
<html:multibox property="checkList" value="003"/>003<br/>
<html:submit /><br/>
</html:form>
然后在struts的配置文件中定义一个DynaActionForm如下:(或者生成一个普通的ActionForm)
总之,Form类中应该定义一个数组类型的成员和相应的multibox对应。
<form-bean name="checkForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="checkList" type="java.lang.String[]" />
相应的Action配置如下:
<action
attribute="checkForm"
name="checkForm"
path="/checkbox"
scope="request"
type="com.spaceadmin.struts.action.CheckBox">
<forward name="input" path="/checkbox.jsp" />
</action>
在Action中访问多个选择值的代码如下:
DynaActionForm dForm = (DynaActionForm)form;
Object obj = dForm.get("checkList");
String[] checkList = (String[])obj;
for(int i=0;i<checkList.length;i++)
System.out.println(checkList[i]);
multibox和checkbox相比具有一定的灵活性,在相应的ActionForm中只要与一个数组类型的属性对应就可以。