2016-06-20 3 views
0

J'ai une liste d'éléments à afficher, où je voulais empêcher l'utilisateur de cliquer sur le bouton ShowMore lorsque l'ensemble des éléments sont affichés.Masquer/Afficher le composant avec backing bean

mon code:

<div class="row center"> 
    <h:commandButton id="morebutton" rendered="#{homeBean.hasMoreProjects()}" styleClass="hoverable btn-large yellow lighten-2 black-text" value="SHOW MORE" > 
     <f:ajax listener="#{homeBean.showMore()}" render="result morebutton" /> 
    </h:commandButton> 
</div> 

La question est ici le bouton ne sera pas cacher chaque fois que la liste des articles est tout indiqué, mais il sera cacher quand je rafraîchir la page.

Comment puis-je vérifier la méthode lorsque je vérifie le bouton?

Toute aide sera beaucoup apprécié, Merci

EDIT 1:

cette question est légèrement différente de la question Ajax update/render does not work on a component which has rendered attribute, cette question en indiquant le bouton commandLink ciblage sur le bouton lui-même pour cacher/montrer le rendu où la question du lien est de cibler la forme d'entrée

Répondre

1

Vous devez toujours rendre le composant parent dans jsf2, cela devrait fonctionner:

<a4j:outputPanel id="morebuttonPanel" styleClass="row center"> 
    <h:commandButton id="morebutton" rendered="#{homeBean.hasMoreProjects()}" styleClass="hoverable btn-large yellow lighten-2 black-text" value="SHOW MORE" > 
     <f:ajax listener="#{homeBean.showMore()}" render="result morebuttonPanel" /> 
    </h:commandButton> 
</a4j:outputPanel> 
+0

merci beaucoup! ça fonctionne maintenant comme le charme! –