2012-09-29 37 views
0

我需要顯示在我的JSF 2 PrimeFaces應用程序隱藏組件,請找我下面的代碼是一樣的:顯示/隱藏JSF2形式<P:selectBooleanButton>

<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="&nbsp;" /> 
<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

你想要展示什麼?你想隱藏什麼? – PermGenError

+0

我想要顯示/隱藏基於選擇 –

回答

0

改爲在<h:panelGroup>的子項上呈現的位置,或者放置一些圍繞它的容器,例如p:panel。

+0

試過你的兩個建議都不起作用 –

+0

爲什麼OP試圖使用'render =「@form」'應該更新整個表單 – BalusC

3

PrimeFaces組件不支持<f:ajax>。改爲使用<p:ajax>

<p:selectBooleanButton ...> 
    <p:ajax update="@form" /> 
</p:selectBooleanButton> 

注意,我省略了event屬性,它默認這裏click了。

+0

試過了nt工作BalusC。順便說一下,我是你的JSF技能的粉絲:) –

+0

適合我這裏。 – BalusC

+0

你能提供我適合你的示例代碼嗎? –

0

這可能是OBE通過,但現在......

當引用頁面Bean,不記得在#{}情況下,使用小寫類名和方法/屬性的約定頁面bean(即不是#{QckPstBen.offer.isExpired},但#{qckPstBen.offer.isExpired}?