我遇到了与此主题中描述的类似问题:Show/hide JSF2 form using selectBooleanCheckbox。但是该线程中提出的解决方案对我不起作用。我想通过选中复选框来获得可扩展的表单。
我的设置如下:
<p:selectBooleanCheckbox id="lookupCheck" value="#{addressDetailBean.addQLookup}">
<p:ajax event="change" update="qlookupcolumn1" process="@this"/>
</p:selectBooleanCheckbox>
<p:outputPanel id="qlookupcolumn1" rendered="#{addressDetailBean.addQLookup}">
<h2>#{msg['qloookup.new.title']}</h2>
<ui:include src="/WEB-INF/includes/integration/qlookupDetailColumns.xhtml">
<ui:param name="bean" value="#{addressDetailBean}" />
</ui:include>
</p:outputPanel>
但是当我检查复选框表格时没有呈现。 Bean被调用并且属性设置正确,我可以在响应中看到该表单,但它不会在页面上呈现。
可能出现什么问题?
答案 0 :(得分:4)
这是一个典型的问题,有许多相关的答案。只需在一个组件中包含输出面板,例如<h:panelGroup>
,它总是呈现并且ajax更新它:
<p:selectBooleanCheckbox ...>
<p:ajax update="refresh" process="@this"/>
</p:selectBooleanCheckbox>
<h:panelGroup id="refresh" ...>
<p:outputPanel rendered=... />
<h:panelGroup/>