JSF 分組下拉列表框的實現
阿新 • • 發佈:2019-02-01
mport javax.faces.model.SelectItem; import javax.faces.model.SelectItemGroup; public class FileItemsBean { /** * 規範性檔案 */ private SelectItem[] ruleFile = { new SelectItem("條例","條例"), new SelectItem("規定","規定") }; /** * 領導指導性檔案 */ private SelectItem[] leaderFile = { new SelectItem("決議","決議"), new SelectItem("決定","決定"), new SelectItem("指示","指示"), new SelectItem("意見","意見"), new SelectItem("通知","通知"), new SelectItem("通報","通報"), new SelectItem("批覆","批覆") }; /** * 會議檔案 */ private SelectItem[] meetFile = { new SelectItem("會議紀要","會議紀要") }; /** * 公佈性檔案 */ private SelectItem[] pubFile = { new SelectItem("公報","公報") }; /** * 陳述呈請性檔案 */ private SelectItem[] stateFile = { new SelectItem("報告","報告"), new SelectItem("請示","請示") }; /** * 商洽性檔案 */ private SelectItem[] bussFile = { new SelectItem("函","函") }; private SelectItemGroup ruleFileGroup = new SelectItemGroup("規範性檔案","ruleFileGroup",false,ruleFile); private SelectItemGroup leaderFileGroup = new SelectItemGroup("領導指導性檔案","leaderFileGroup",false,leaderFile); private SelectItemGroup meetFileGroup = new SelectItemGroup("會議檔案","meetFileGroup",false,meetFile); private SelectItemGroup pubFileGroup = new SelectItemGroup("公佈性檔案","pubFileGroup",false,pubFile); private SelectItemGroup stateFileGroup = new SelectItemGroup("陳述呈請性檔案","stateFileGroup",false,stateFile); private SelectItemGroup bussFileGroup = new SelectItemGroup("商洽性檔案","bussFileGroup",false,bussFile); private SelectItem[] groups = { ruleFileGroup,leaderFileGroup,meetFileGroup,pubFileGroup,stateFileGroup,bussFileGroup }; public SelectItem[] getGroups() { return groups; } public void setGroups(SelectItem[] groups) { this.groups = groups; }; }
<h:outputLabel for="fileType" value="文件類別" /> <f:verbatim> </f:verbatim> <h:selectOneMenu id="fileType" value="#{fileRepBean.fileRep.fileType}" required="true" style="width:154px;"> <f:selectItem itemValue="" itemLabel="請選擇"/> <f:selectItems value="#{FileItemsBean.groups}"/> </h:selectOneMenu>