如何使用struts1.3动作生成动态组合框并在提交页面时也获得其值?

时间:2013-08-29 13:38:57

标签: html jsp struts-1

我是Strut 1.3的新手,需要使用struts1.3动作创建动态组合框。我需要从struts1.3动作获取数据并在jsp中生成10个组合框。生成组合框后,需要选择值并选择操作中的值并将其放入DB中。

我该怎么做?

谢谢, Nirav

1 个答案:

答案 0 :(得分:1)

这可能是你应该做的事情:

在jsp页面中:

 <html:select property="item">
       <html:optionsCollection property="itemList" label="name" value="Item"/>
 </html:select>

以您的形式:

公共类MyForm扩展ActionForm {     private LabelValueBean item = null;     private List itemList = null;

public LabelValueBean getItem(){
    return item;
}
public void setItem(LabelValueBean item){
    this.item = item;
}
public List<LabelValueBean> getItemList(){
    return itemList;
}
putlic void setItemList(List<LabelValueBean> itemList){
    this.itemList = itemList;
}

}

在您的操作类中填充您的列表:

public class MyAction extends Action{
    public ActionForward execute(......){
        List<LabelValueBean> newList = new ArrayList<LabelValueBean>;
            LabelValueBean lb1 = new LabelValueBean("One", "One");
            LabelValueBean lb2 = new LabelValueBean("Two", "Two");
            LabelValueBean lb3 = new LabelValueBean("Three", "Three");
            newList.add(lb1);
            newList.add(lb2);
            newList.add(lb3);

        myForm.setItemList(newList);
    }
}

用户选择项目并点击提交后,您可以在操作类中访问所选值。所选值存储在表单类的“item”属性中。所以现在你可以把这个值保存在你的数据库中。

对于其他组合框,只需重复相同的操作即可。