struts2的select标签用法实例分析
本文实例讲述了struts2的select标签用法。分享给大家供大家参考。具体如下:
项目中遇到个小问题,总结下。
关于struts2 select标签的使用。
struts2 中从别的表中遍历数据 填充进入下拉菜单 用<s:select>标签显示.
struts2的版本为2.1.8
<s:select
list=""
name=""
value=""
headerkey=""
headervalue=""
listkey=""
listvalue=""
/>
(1)其中 list是必须具备的属性 list中可以存储map list set类型的数据
list 属性:通常是在action中定义的,必须是一个可以迭代的源,如为一个list, map, set等。如果是一个map,那么map的key就对应于select标签中的value,map中的value就对应于select标签中的 option。而如果是一个list或者是一个set,那么可以通过listkey和listvalue指定。
(2)如果list为空headkey 和headvalue不能为空.listkey和listvalue:listkey即对应于select标签中的value, listvalue即对应于select标签中的option
(3)name属性:即是表单中select的名称。
下面具体解释下各个属性的含义。
headervalue : 默认值value
headerkey : 默认name
list : 源数据 (可以在action方法里从数据库获取list)
name : 被选数据存放的位置(这里我方在对象obj的属性值username中<需在action中定义该对象>)
listkey : 下拉选项的name
listvalue : 下拉选项的value
value : 默认值
1.第一个例子:
2.第二个例子:
3.第三个例子:
<% java.util.hashmap map = new java.util.linkedhashmap(); map.put(1,"aaa"); map.put(2,"bbb"); map.put(3,"ccc"); request.setattribute("map",map); request.setattribute("aa","2"); %> <s:select list="#request.map" label="abc" listkey="key" listvalue="value" value="#request.aa" headerkey="0" headervalue="aabb"></ s:select >
headerkey headervalue 为设置缺省值
4.第四个例子
public class program implements serializable { /** serialversionuid */ private static final long serialversionuid = 1l; private int programid; private string programname; public int getprogramid() { return programid; } public void setprogramid(int programid) { this.programid = programid; } public string getprogramname() { return programname; } public void setprogramname(string programname) { this.programname = programname; } } xxxextends extends actionsupport { private list<program> programs ; public list<program> getprograms() { return programs; } public void setprograms(list<program> programs) { this.programs = programs; } }
在jsp页面
<s:select list="programs" listvalue="programname" listkey="programid" name="program" id="program" headerkey="0l" headervalue="" value="bean.programid "></s:select>
其中:list="programs"为在action里面的list,listvalue="programname"为<option value="xxx">value</option>对应bean里面的字段programname
listkey="programid"为<option value="xxx",对应bean里面的字段programid,value="bean.programid"为设定select被选中的值,s:select 会自动在 bean选中 key对应的值
希望本文所述对大家的struts程序设计有所帮助。