2010-10-06 102 views
0

我正在使用jsf和Richfaces。我使用<rich:tabpanel>創建了一個tabpanel。我已採取4個標籤,如tab1,tab2,tab3tab4。如果我運行應用程序tab1是默認的一個。如果我轉到下一個標籤頁,我會對NEXT<<PREV>>之間的每個標籤使用導航。如何禁用Richfaces中的選項卡

  1. 如果我點擊標籤標籤,它也會改變標籤。如果我運行應用程序,我想TAB1被激活,所有其他選項卡將被禁用(如TAB2TAB3被禁用。如果我點擊導航按鈕,只有標籤會被激活。)

  2. 如果我運行應用程序時,TAB1將被激活後,填補了TAB1詳細資料點擊NEXT<<導航然後TAB2處於活動狀態。現在tab1tab2是活動的。 tab3tab4是非法的。

上述兩個問題的解決方案是什麼?

回答

0
<rich:tabPanel switchType="ajax"> 
     <rich:tab label="First"> 
      Here is tab #1 
     </rich:tab> 
     <rich:tab label="Second" disabled="true"> 
      Here is tab #2 
     </rich:tab> 
     <rich:tab label="Third" disabled="true"> 
      Here is tab #3 
     </rich:tab> 
    </rich:tabPanel> 

這裏第二個和第三個選項卡將被禁用,你可以這樣做

disabled= #{Bean.isDisabledTab1} 

而接下來韓德爾它,以前

0

補充org.life.java的回答,您可以添加您切換標籤頁時您點擊的按鈕或鏈接的動作監聽器,例如:

   <a4j:commandLink id="identifierLink" value="#{bean.ID_COUNT}" 
       actionListener="#{bean.switchTab}" reRender="clientTabPanel, clientTable"> 
        <f:param id="internalID" value="#{bean.INTERNAL_ID}" name="internalIDParam"/> 
      </a4j:commandLink> 

switchTab動作偵聽器方法將包含啓用或禁用其他選項卡的邏輯(就像提到的org.life.java一樣),並且如果您想在決定切換時將某些內容傳遞給動作偵聽器,則可以使用f:param或不。我認爲當你更新「disabled」屬性的相關屬性時,你需要重新渲染tabPanel。

相關問題