Le rendu de plusieurs composants avec f:ajax

les mauvais codes sont:

<h:form id="search_form">
<h:commandButton class="button" value="View" action="#{InfoBean.search}">
    <f:ajax execute="search_form" render="linear1"></f:ajax>
    <f:ajax execute="search_form" render="linear2"></f:ajax>
</h:commandButton>
<p:lineChart id="linear1" value="#{InfoBean.linearModel1}" legendPosition="e"/>
<p:lineChart id="linear2" value="#{InfoBean.linearModel2}" legendPosition="e"/>
</h:form>

Ce que je veux faire, c'est quand je clique sur le commandButton , je veux actualiser ces deux graphiques. Mais maintenant j'ai utilisé deux étiquettes <ajax> , dont la seconde ne fonctionne pas.

alors comment puis-je utiliser ajax pour rendre deux graphiques?

23
demandé sur BalusC 2013-05-17 01:10:03

2 réponses

vous pouvez rendre plusieurs composants avec un seul f:ajax . Assurez-vous juste que tous les composants individuels que vous voulez mettre à jour ont un id . Dans votre échantillon ce serait quelque chose comme:

<f:ajax execute="search_form" render="linear1 linear2"/>

où les IDs doivent être séparés par juste des espaces comme linear1 linear2 et non pas séparés comme linear1, linear2 (qui ne fonctionne que dans p:ajax ).

Voir aussi:

46
répondu partlov 2017-05-23 10:31:22

pour l'usage a4j jsf",": <a4j:support event="onchange" reRender="parent,child1,child2" />

0
répondu Chinmoy 2017-08-24 07:56:47