問題原型:
???? 添加頁面中有10個checkbox,用戶選中了5個后提交
?????修改頁面中應(yīng)顯示10個checkbox,同時應(yīng)該有5個已經(jīng)被選中
?
詳細實際問題:
????為了滿足業(yè)務(wù)需要,從linux安裝盤中的comps.xml中讀取提供的服務(wù)所依賴的包
??? 顯示在頁面上,根據(jù)包的類型(default,mandatory,optional)決定顯示的方法
??? default默認選中,mandatory不提供選擇,optional為用戶可選
??

























在處理層,采用struts的form來接受,定義string [] nodeRPMs接受即可
接受后存在數(shù)據(jù)庫里,然后讀出來在顯示在頁面上
在修改頁面,首先應(yīng)該有全部的checkbox,同時用戶選中的應(yīng)該已經(jīng)被打勾(這來自數(shù)據(jù)庫讀出的記錄),經(jīng)過中午的查找資料
才知道可以使用mutilbox解決這個問題




















mutilbox會根據(jù)你讀出的值來設(shè)定
?struts中的checkbox是單選的,它的值應(yīng)該只有true和false或者yes no或者on off之分;
r如果希望使用一組可以多選的checkbox,在struts中的頁面標簽應(yīng)該是html:multibox,它的用法:<html:multibox property="strArray" value="value1">或者
?????? <html:multibox property="strArray">value2</html:multibox>
真正載頁面上使用時可能是這樣:
<html:multibox property="strArray">a</html:multibox>
<html:multibox property="strArray">b</html:multibox>
<html:multibox property="strArray">c</html:multibox>
當然"strArray"一定是頁面相對應(yīng)的formbean中的一個屬性,并且應(yīng)該是數(shù)組:
private String[] strArray; //提供get set方法
這樣,如果我們在頁面上面選中了前兩個,則strArray.length=2;strArray[0]里面的值是a,strArray[1]里面的值是b;
如果我們把form中的strArray設(shè)置為strArray[0]="b",strArray[1]="c",則轉(zhuǎn)到頁面之后,頁面上只有后兩項被選中
所以這樣就可以解決問題了