1

これは、h:selectOneMenuUI でドロップダウン クリックが 3 つの値 (A、B、C) を表示する私の部分です (A、B、C を含む Bean に domainList メソッドがあります)。

<h:form id="MainForm">
    <h:panelGrid columns="1">
        <h:selectOneMenu id="domainList" value="#{bean.domain}" listener="#{bean.changeDomainValue}">
            <f:selectItem itemLabel="#{msg.abc }"/>
            <f:selectItems value="#{bean.dMap.entrySet()}"
                           var="entry" itemLabel="#{entry.key}" itemValue="#{entry.value}"/>
            <f:ajax event="change" render="??????"/>
        </h:selectOneMenu>
    </h:panelGrid>

Value="C"これは、ドロップダウンリストから選択した場合、既存のフォームに2つのチェックボックスを追加する必要があるという私の懸念です(追加フィールド):

    <h:panelGrid columns="2">
        <h:outputLabel value="#{msg.box1}"></h:outputLabel>
        <h:selectBooleanCheckbox value="#{bean.chkBox1}"></h:selectBooleanCheckbox>
    </h:panelGrid>

    <h:panelGrid columns="2">

    <h:outputLabel value="#{msg.box2} :"></h:outputLabel>
    <h:selectBooleanCheckbox value="#{bean.chkBox2}"></h:selectBooleanCheckbox>
    </h:panelGrid>
</h:form>

これが私のものBean.javaです:

private void changeDomainValue(ValueChangeEvent e) {
    if (e.getNewValue() == "C") {
        this.chkBox1 = "true";
        this.chkBox2 = "true";
    } else
        this.chkBox1 = "false";
    this.chkBox2 = "false";
    //return false;
}

質問: を選択した場合にのみこれら 2 つのチェックボックスが入力されるようにするには、レンダリング プロパティに何を追加すればよいdomainList= "c"ですか?

4

0 に答える 0