Struts 2获取未定义数量的选择标记

时间:2014-07-04 07:31:22

标签: struts2

我在使用以下类中的对象填充的选择标记时遇到问题:

public class Status {

private Person person;
private Date date;

private List<Requests> requestList;

 /*
      getters and setters
 */
}

问题是我生成了一些未定义的数字,以便在表格中显示它们。 使用列表填充选择。

我的问题是:如何从页面中的选择中获取所有结果并将它们返回给控制器?

提前谢谢你,

Steven P。

1 个答案:

答案 0 :(得分:0)

第1步:在您的updateAction类中(您想要所有组合框结果的位置)创建一个String数组 - &gt; private String [] myarray;

public class UpdateUserAction extends ActionSupport {
    private String[] myarray;
    @Override
    public String execute() throws Exception {
        //Print what we got from comboboxes
        for(String s: myarray)
        {
        System.out.println(s);  
        }
   }

//getter
//setters
public void setMyarray(String[] myarray) {
    this.myarray = myarray;
}

public String[] getMyarray() {
    return myarray;
}
}

第2步:<s:select name="myarray" />的jsp页面中的所有组合框的name属性中提供此名称 myarray

<%@ taglib uri="/struts-tags" prefix="s" %>  
<form action="update-user" method="post">
    <s:select name="myarray" id="ddlTown" list="{'option1','option2'}"/>
    <s:select name="myarray" id="ddlTown" list="{'option1','option2'}"/>
    <s:select name="myarray" id="ddlTown" list="{'option1','option2'}"/>
    <s:select name="myarray" id="ddlTown" list="{'option1','option2'}"/>
<s:submit/>
</form>

第3步:现在,您将在更新操作中获得此数组中的选项,其中 String [] myarray

  

选项2
  选项1
  选项2
  选项1