2010-10-06 4 views
0

J'utilise jsf avec Richfaces. J'ai créé un onglet en utilisant <rich:tabpanel>. J'ai pris 4 onglets comme tab1, tab2, tab et tab. si je cours l'application tab1 est un défaut. Si je vais à l'onglet suivant, j'utilise la navigation pour chaque onglet comme NEXT<< et PREV>>.Comment désactiver les onglets dans Richfaces

  1. Si je clique sur une étiquette d'onglet, elle change également les onglets. si je lance l'application, je veux tab1 être actif et tous les onglets autres sont désactivés (comme tab2 ou tab3 sont désactivées. Si je clique sur les boutons de navigation, seuls les onglets seront actifs.)

  2. Si je lance l'application, le tab1 sera actif après remplir les tab1 détails cliquez sur la barre de navigation NEXT<< puis tab2 est actif. Maintenant, les tabulations tab1 et tab2 sont actives. tab3 et tab4 sont des inactifs.

Quelle est la solution pour les deux questions ci-dessus?

Répondre

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> 

ici deuxième et troisième onglet est désactivé, vous pouvez faire quelque chose comme

disabled= #{Bean.isDisabledTab1} 

Et handel sur suivant, précédent

0

Complétant org.life.java réponse, vous pouvez ajouter un programme d'écoute d'action sur le bouton ou le lien sur lequel vous cliquez lorsque vous changez d'onglet, par exemple:

   <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> 

La méthode d'écoute d'action switchTab contiendrait la logique permettant d'activer ou de désactiver les autres onglets (comme org.life.java mentionné), et vous pourriez utiliser f: param si vous voulez transmettre quelque chose à votre écouteur d'action quand vous décidez de changer ou pas. Je pense que vous devez re-rendre le tabPanel lorsque vous mettez à jour la propriété associée pour l'attribut "disabled".

Questions connexes