當一個.do出發的時候,struts先調用formBean里的reset方法,在這里可以對表單進行一些處理,然后再在action里面進行表單的其
他賦值操作。可以在表單中用reset來給表單的一些元素賦值,但是要注意action是在這之后執行,所以要注意action的excute方法不要沖
掉就行,例如
jsp中


<html:select property="code">
<logic:iterate id="item" name="myList" scope="request" type="java.lang.String">
<html:option value="<%=item%>"><%=item%></html:option>
</logic:iterate>
</html:select>

1 import java.util.ArrayList;
2 import java.util.List;
3 import javax.servlet.http.HttpServletRequest;
4 import org.apache.struts.action.ActionForm;
5 import org.apache.struts.action.ActionMapping;
6
7 public class XxxForm extends ActionForm {
8

9 private String code;
10 get/set

11 @Override
12 public void reset(ActionMapping mapping, HttpServletRequest request) {
13 super.reset(mapping, request);
14 List myList = new ArrayList();
15 myList.add("aaa");
16 myList.add("bbb");
17 myList.add("ccc");
18 request.setAttribute("myList", myList);
19 this.code ="bbb";
20 }
21
22 }
2 import java.util.List;
3 import javax.servlet.http.HttpServletRequest;
4 import org.apache.struts.action.ActionForm;
5 import org.apache.struts.action.ActionMapping;
6
7 public class XxxForm extends ActionForm {
8


9 private String code;
10 get/set


11 @Override
12 public void reset(ActionMapping mapping, HttpServletRequest request) {
13 super.reset(mapping, request);
14 List myList = new ArrayList();
15 myList.add("aaa");
16 myList.add("bbb");
17 myList.add("ccc");
18 request.setAttribute("myList", myList);
19 this.code ="bbb";
20 }
21
22 }
jsp中


<html:select property="code">
<logic:iterate id="item" name="myList" scope="request" type="java.lang.String">
<html:option value="<%=item%>"><%=item%></html:option>
</logic:iterate>
</html:select>


初始化select為aaa\bbb\ccc,默認bbb被選中