我有两个面板:

<p:outputPanel id="contentDisplay">
<p:outputPanel id="dashboarddisplay">


我需要通过选择<p:outputPanel>按钮来呈现上述<h:selectOneRadio>之一。

这是我为<h:selectOneRadio>编写的代码:

<h:selectOneRadio id="choice" style="width:100%"
                  value="#{Bean.selectedChoice}">
    <f:selectItem id="item1" itemLabel="Hours Allocation"   itemValue="1" />
    <f:selectItem id="item2" itemLabel="DashBoard" itemValue="2" />
    <p:ajax render="contentDisplay dashboarddisplay " execute="@this"
            update="contentDisplay dashboarddisplay" listener="#{cmpmBean.onChoiceSelect}" />
</h:selectOneRadio>



如何将<f:selectItem>的选定值传递给支持bean?

尽管触发了ajax事件,但我无法在备用bean中获取变量“ onChoiceSelect”的值。

任何建议对于解决此问题确实很有帮助。

最佳答案

这就是我要做的:

<p:outputPanel id="content">
    <p:outputPanel id="contentDisplay" rendered="#{Bean.selectedChoice eq 1}">
        ...A
    </p:outputPanel>
    <p:outputPanel id="dashboarddisplay" rendered="#{Bean.selectedChoice eq 2}">
        ...B
    </p:outputPanel>
</p:outputPanel>
<h:form>
    <h:selectOneRadio id="choice" style="width:100%"
                      value="#{Bean.selectedChoice}">
        <f:selectItem itemLabel="Hours Allocation" itemValue="1" />
        <f:selectItem itemLabel="DashBoard" itemValue="2" />
        <p:ajax update=":content" />
    </h:selectOneRadio>
</h:form>

10-08 13:12