Struts标签<html:select>动态赋值并赋默认值

本文详细介绍了Struts框架中&lt;html:select&gt;标签的使用方法,包括如何动态赋值及设置默认值,并提供了三种绑定值的方法:固定值、数组绑定和集合绑定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[b]一、Struts标签<html:select>动态赋值并赋默认值[/b]
[b]1.ID和名称定义两个集合[/b]
Action方法:
List fristdeptlist = docDao.getFristDept();
List deptidlist=new ArrayList();
for(int i=0;i<fristdeptlist.size();i++){
TblDept tbldept=(TblDept)fristdeptlist.get(i);
deptidlist.add(tbldept.getDtid());
}
List deptnamelist=new ArrayList();
for(int i=0;i<fristdeptlist.size();i++){
TblDept tbldept=(TblDept)fristdeptlist.get(i);
deptnamelist.add(tbldept.getDeptname());
}
request.setAttribute("deptidlist", deptidlist);
request.setAttribute("deptnamelist", deptnamelist);

jsp页面:
<html:select name="docForm" property="firstdtid">
<html:options name="deptidlist" labelName="deptnamelist" />
</html:select>

[b]2.ID和名称定义LabelValueBean对象[/b]
Action方法:
ArrayList difficultyList=new ArrayList();
String[] tmp1 = StatusClass.DIFFICULTS;
for(int n=0;n<tmp1.length;n++){
String tmpstr = tmp1[n];
String[] tmp2 = tmpstr.split(",");
difficultyList.add(new LabelValueBean(tmp2[1],tmp2[0]));
}
request.setAttribute("difficultyList", difficultyList);

jsp页面:
<html:select property="difficulty">
<html:optionsCollection name="difficultyList" />
</html:select>


[b]二、总结Struts中<html:select>标签绑定值的三种方法[/b]
[b]1.固定的值的写法[/b]
<html:select property="enjoyDevelop">
<html:option value="喜欢">喜欢</html:option>
<html:option value="不喜欢">不喜欢</html:option>
</html:select>

[b]2.非固定的两种写法(支持数据库中值绑定)[/b]
绑定数组:
<html:select property="enjoyDevelop">
<html:options property="enjoyDevelops" labelProperty="enjoyDevelopsLable"/>
</html:select>
property:指定值的内容
labelProperty:指定显示内容的
指定的属性代码:(分别生成get和set方法)
private String[] enjoyDevelops = new String[]{"very enjoy","just so so","don't like","hate"};
private String[] enjoyDevelopsLable = new String[]{"非常喜欢","一般般","不喜欢","讨厌"};

[b]3.绑定一个集合:[/b]
<html:select property="enjoyDevelop">
<html:optionsCollection property="enjoyDevelopList" value="value" label="text"/>
</html:select>
property:指定要绑定的List对象名
value:指定HashMap中的value
label:指定HashMap中的text
在ActionForm中的get方法:
public List getEnjoyDevelopList() {
List enjoyDevelopList = new ArrayList();
for (int i = 0; i < enjoyDevelops.length; i++) {
Map map = new HashMap();
map.put("value",enjoyDevelops[i]);
map.put("text",enjoyDevelopsLable[i]);
enjoyDevelopList.add(map);
}
return enjoyDevelopList;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值