我需要在我的JSF 2-PrimeFaces应用程序中显示和隐藏组件,请在下面找到我的代码:
<p:outputLabel for="online_offer" value="Online offer#{msg._question_mark}" styleClass="font-size-1em font-weight-bold input-panel-main" />
<p:panel>
<h:panelGrid columns="1">
<p:selectBooleanButton id="online_offer" value="#{QckPstBen.offer.isExpired}" onLabel="Yes" offLabel="No" onIcon="ui-icon-check" offIcon="ui-icon-close" >
<f:ajax event="click" render="@form" />
</p:selectBooleanButton>
</h:panelGrid>
</p:panel>
<h:outputLabel value=" " />
<h:panelGroup rendered="#{QckPstBen.offer.isExpired}">
<p:outputLabel for="website" value="Website/link to the offer#{msg._colon}" styleClass="font-size-1em font-weight-bold input-panel-main" />
<p:panel>
<h:panelGrid columns="1">
<p:inputText id="website" required="true" size="38" />
<p:watermark for="website" value="www.discountbox.in" />
</h:panelGrid>
</p:panel>
</h:panelGroup>
但它不起作用,任何线索
答案 0 :(得分:3)
PrimeFaces组件不支持<f:ajax>
。请改用<p:ajax>
。
<p:selectBooleanButton ...>
<p:ajax update="@form" />
</p:selectBooleanButton>
请注意,我省略了event
属性,此处默认为click
。
答案 1 :(得分:0)
代替<h:panelGroup>
的孩子,或者在其周围放置一些容器,例如p:panel。
答案 2 :(得分:0)
这可能是OBE,但是......
在引用页面bean时,我不记得在#{}上下文中,对于类名和页面bean的方法/属性使用小写的惯例(即不是#{QckPstBen.offer.isExpired}但是# {qckPstBen.offer.isExpired}?