1. 程式人生 > >JSF 分組下拉列表框的實現

JSF 分組下拉列表框的實現

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>