我有两个小组:
<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”的值。
任何建议都有助于解决此问题。
答案 0 :(得分:1)
这就是我要做的事情:
<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>
答案 1 :(得分:0)
我尝试了以下代码并且它工作正常,我能够在支持bean中获取值。
<h:form>
<h:panelGrid columns="3" cellpadding="2" style="width: 100%"
id="sysinfopan1">
<h:panelGroup>
<h:selectOneRadio id="choice" style="width:100%"
value="#{cmpmBean.selectedChoice}">
<f:selectItem itemLabel="Hours Allocation" itemValue="1" />
<f:selectItem itemLabel="CMPM DashBoard" itemValue="2" />
<p:ajax render="contentDisplay dashboarddisplay" update=":contentDisplay :dashboarddisplay" execute="@this" listener="#{cmpmBean.onChoiceSelect}" />
</h:selectOneRadio>
</h:panelGroup>
</h:panelGrid> </h:form>
通过选择任一选项,两个输出面板都能正确呈现。