本文研究的主要是Struts框架中復(fù)選框的相關(guān)內(nèi)容。復(fù)選框在web開發(fā)中用的非常廣泛,具體介紹如下。
創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的沙坪壩網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
如下圖,當前為用戶選中的水果為"香蕉",點擊按鈕,跳轉(zhuǎn)到修改界面進行修改。
跳轉(zhuǎn)到修改界面后要回顯用戶的選擇(香蕉),然后由用戶再次進行勾選,如圖:
前臺界面:
后臺ChecBoxAction.java代碼:
public class ChecBoxAction extends ActionSupport { private static final long serialVersionUID = 1L; /*前臺通過復(fù)選框選中的水果名稱*/ private String fruits; public String getFruits() { return fruits; } public void setFruits(String fruits) { this.fruits = fruits; } public String test(){ /*沒去除空格之前*/ System.out.println(this.getFruits()); /*獲取從前臺穿過來的字符串(注:這里必須去除空格,因為傳過來的每個值之間除了有逗號分隔符之外還都有空格,但是通過trim()的方式是去不掉空格的)*/ //String fruitStr = this.getFruits().trim(); /*必須如是這般才能去掉空格*/ String fruitStr = this.getFruits().replaceAll(" ", ""); System.out.println("去除空格之后的字符串:" + fruitStr); /*把字符串通過逗號分隔為一個字符串數(shù)組*/ String[] fruit = fruitStr.split(","); /*遍歷所有的值,把它們存到一個集合中*/ ListmyFruits = new ArrayList (); for (int i=0; i list = new ArrayList (); list.add("香蕉"); list.add("雪梨"); list.add("西瓜"); ActionContext.getContext().put("list", list); return this.SUCCESS; } }
注:復(fù)選框向后臺傳值,傳過去的是一個字符串,且?guī)в锌崭?,所以必須去除空格,但是用trim()方法是去除不了的,使用trim()方法之后的效果。如下:
如圖,毫無效果!但是,我們可以使用replaceAll()方法,去替代空格,效果如下:
另外為了在修改界面展示所有的復(fù)選框(水果),我們在Action中模擬從數(shù)據(jù)庫中取出所有的值,然后和用戶選擇的復(fù)選框一起傳到修改界面。
修改界面:
注:修改界面比較復(fù)雜,首先是遍歷所有復(fù)選框(水果),在每個浮選中又使用一個forEach循環(huán),去遍歷用戶選擇的所有復(fù)選框(水果),然后通過三目運算符去判斷當前復(fù)選框是否被用戶選中,如果匹配,就勾選。
以上就是本文關(guān)于復(fù)選框和Struts2后臺交互代碼詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!