溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Struts2如何實(shí)現(xiàn)下拉框

發(fā)布時(shí)間:2021-08-13 17:07:34 來(lái)源:億速云 閱讀:113 作者:小新 欄目:編程語(yǔ)言

小編給大家分享一下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ù):

Struts2如何實(shí)現(xiàn)下拉框

注:listKey相當(dāng)于HTML中的value值,我們是通過(guò)它的值來(lái)和后臺(tái)進(jìn)行交互的。

案例:用戶選擇了自己的偶像,然后要對(duì)其進(jìn)行修改,跳轉(zhuǎn)到修改界面之后,要回顯用戶最初選擇的偶像。

用戶偶像界面(假設(shè)用戶當(dāng)前的選擇為"習(xí)近平"):

Struts2如何實(shí)現(xiàn)下拉框

實(shí)現(xiàn)代碼!!!!

用戶偶像界面:

<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è)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI