本文實例講述了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.第一個例子:
復制代碼 代碼如下:<s:select list="{'aa','bb','cc'}" theme="simple" headerKey="00" headerValue="00"></s:select>
2.第二個例子:
復制代碼 代碼如下:<s:select list="#{1:'aa',2:'bb',3:'cc'}" label="abc" listKey="key" listValue="value" headerKey="0" headerValue="aabb">
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程序設計有所幫助。