2012-07-05 60 views
2

我有一個搜索條件來從兩個不同的日期之間從數據庫中獲取細節。重新渲染豐富:日曆不是第一次工作,但在頁面刷新工作

我有一個h:slectOneMenu填充列表{「從」,「到」,「之間」}。對於「從」和「到」日期,我必須顯示一個富有的日曆輸入日期和「之間」我必須顯示兩個富:日曆輸入開始日期和結束日期。

我的代碼是這樣的

<h:selectOneMenu id="startdate" 
     value="#{commoncontroller.coverDateType}"> 
     <a4j:support event="onchange" ajaxSingle="true"  
        action="#controller.dateSelectionChanged}" 
        reRender="startdateone,startdatetwo"/> 
      <f:selectItems value="#{controller.startDateMap}" /> 
    </h:selectOneMenu> 

    <h:panelGrid id="startdateone" layout="block" rendered="#{controller.dateOneStatus}"> 
      <rich:calendar id="date1"        value="#{controller.covStartDate}" showWeeksBar="false" /> 
    </h:panelGrid> 

    <h:panelGrid id="startdatetwo" layout="block" rendered="#{controller.dateTwoStatus}"> 
      <rich:calendar id="date2"        value="#{controller.covStartDate2}" showWeeksBar="false" /> 
    </h:panelGrid> 

如果我選擇從選擇菜單中的日曆不會渲染,即使該panelGrid的rendered屬性被設置爲true,在後端,但如果我刷新一次任意值然後頁面呈現。

任何幫助,非常感謝。

回答

0

直接說rereendering組件rendered屬性有一個問題,當我直接說你剛剛在你的代碼中做了什麼。嘗試使用父級組件包裝您的兩個面板網格,如a4j:outputPanelreRender即a4j:outputPanel使用其ID。

像這樣:

<h:selectOneMenu id="startdate" 
     value="#{commoncontroller.coverDateType}"> 
     <a4j:support event="onchange" ajaxSingle="true"  
        action="#controller.dateSelectionChanged}" 
        reRender="box"/> 
      <f:selectItems value="#{controller.startDateMap}" /> 
    </h:selectOneMenu> 

<a4j:outputPanel id="box"> 
    <h:panelGrid id="startdateone" layout="block" rendered="#{controller.dateOneStatus}"> 
      <rich:calendar id="date1"        value="#{controller.covStartDate}" showWeeksBar="false" /> 
    </h:panelGrid> 

    <h:panelGrid id="startdatetwo" layout="block" rendered="#{controller.dateTwoStatus}"> 
      <rich:calendar id="date2"        value="#{controller.covStartDate2}" showWeeksBar="false" /> 
    </h:panelGrid> 

</a4j:outputPanel> 

希望這有助於。 -cheers

+0

謝謝你的回覆Ellie。是的,我只是在早些時候這樣做,但要求儘可能不使用richFaces組件。所以試過這種方式。但通過使用panelGrid的條件CSS成功。 > 2012-07-15 16:14:25

+0

恭喜然後:) – 2012-07-16 03:08:30

相關問題