我们如果想动态的给select下拉菜单添加数据,有两种办法,一种是使用JS,一种是使用代码片段
在Webwork中,我们有了新的方法,在action中构造一个collection,可以使list,map等,然后,指定<ww:select>的list属性就可以了
Action: (我们的list是gao)
package ch11;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork.ActionSupport;

public class ModifyUser extends ActionSupport ...{
private User user;
private String gaoxiang;
List gao=new ArrayList();
public ModifyUser()...{
gao.add("1");
gao.add("2");
gao.add("3");
gao.add("gao");
}
public User getUser() ...{
return user;
}
public void setUser(User user) ...{
this.user = user;
}
public String execute() throws Exception ...{
System.out.println(gaoxiang);
return SUCCESS;
}



public String getGaoxiang() ...{
return gaoxiang;
}

public void setGaoxiang(String gaoxiang) ...{
this.gaoxiang = gaoxiang;
}
public List getGao() ...{
return gao;
}
public void setGao(List gao) ...{
this.gao = gao;
}


}
JSP:
<ww:select label="ga2o" name="gaoxiang" list="gao"/>
这样一来,可以看到,select中就是我们定义的1,2,3,gao
<select name="gaoxiang" id="testUI_gaoxiang">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="gao">gao</option>
</select>
如果gao是一个map
gao.put("1","11");
gao.put("2","22");
则生成的html是:
<select name="gaoxiang" id="testUI_gaoxiang">
<option value="2">22</option>
<option value="1">11</option>
</select>
区别显而易见,就是select的数值合显示值的区别
本文介绍如何使用WebWork框架中的<ww:select>标签动态填充下拉菜单选项,支持List和Map类型数据源。
38

被折叠的 条评论
为什么被折叠?



