您好,登錄后才能下訂單哦!
小編給大家分享一下Struts2如何實(shí)現(xiàn)下拉框,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
下拉框在Web開(kāi)發(fā)中經(jīng)常會(huì)使用到,下面我們通過(guò)struts2的標(biāo)簽來(lái)實(shí)現(xiàn)下拉框的一些功能。
先來(lái)看看<s:select>
的一些參數(shù):
注:listKey相當(dāng)于HTML中的value值,我們是通過(guò)它的值來(lái)和后臺(tái)進(jìn)行交互的。
案例:用戶選擇了自己的偶像,然后要對(duì)其進(jìn)行修改,跳轉(zhuǎn)到修改界面之后,要回顯用戶最初選擇的偶像。
用戶偶像界面(假設(shè)用戶當(dāng)前的選擇為"習(xí)近平"):
<form action="selectAction.action" method="post"> 您的偶像為:<s:select list="#{1:'鄧小平',2:'胡錦濤',3:'習(xí)近平',4:'李克強(qiáng)'}" name="id" listKey="key" listValue="value"/> <input type="submit" value="我要修改"> </form> </body>
注:list使用OGNL創(chuàng)建的Map集合。
action代碼:
public class SelectAction extends ActionSupport { private static final long serialVersionUID = 1L; /*用戶所選的偶像的id*/ private String id; /*偶像集合*/ private List<User> users; public String getId() { return id; } public void setId(String id) { this.id = id; } public List<User> getUsers() { return users; } public void setUsers(List<User> users) { this.users = users; } public String execute(){ /*創(chuàng)建一個(gè)集合模擬從數(shù)據(jù)庫(kù)中查出所有的用戶*/ users = new ArrayList<User>(); users.add(new User(1, "鄧小平")); users.add(new User(2, "胡錦濤")); users.add(new User(3, "習(xí)近平")); users.add(new User(4, "李克強(qiáng)")); /*把所有的用戶存在OGNL Context上下文中*/ ActionContext.getContext().put("users", users); //注:這里并不需要把用戶所選的值存起來(lái),因?yàn)槲覀兊膇d屬性就是用戶所選的值, //作為action的屬性,它已經(jīng)保存到值棧中去了,可以直接根據(jù)屬性名id來(lái)獲取 return this.SUCCESS; } }
javaBean對(duì)象:
public class User { /* 用戶id */ private Integer uid; /* 用戶名 */ private String uname; /* 無(wú)參構(gòu)造函數(shù) */ public User() { } /* 構(gòu)造函數(shù) */ public User(Integer uid, String uname) { this.uid = uid; this.uname = uname; } public Integer getUid() { return uid; } public void setUid(Integer uid) { this.uid = uid; } public String getUname() { return uname; } public void setUname(String uname) { this.uname = uname; } }
修改界面:
<body> 您的偶像為: <s:select list="#users" listKey="uid" listValue="uname" value="id" /> </body>
注:value值只寫了一個(gè)id(用戶所選偶像的id)屬性名稱,是因?yàn)樗莂ction中的屬性,action中的屬性會(huì)被保存到值棧中,所以可以直接獲取。
以上是“Struts2如何實(shí)現(xiàn)下拉框”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。