event - jsf ajax call javascript function
Renderiza mĂșltiples componentes con f: ajax (2)
Para a4j jsf use '','': <a4j:support event="onchange" reRender="parent,child1,child2" />
Los códigos incorrectos son:
<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>
Lo que quiero hacer es cuando hago clic en el commandButton
, quiero actualizar esos dos cuadros. Pero ahora usé dos etiquetas <ajax>
, de las cuales la segunda no funciona.
Entonces, ¿cómo puedo usar ajax para representar dos gráficos?
Puede representar varios componentes con un solo f:ajax
. Solo asegúrese de que todos los componentes individuales que desea actualizar tengan una id
. En tu muestra, sería algo así como:
<f:ajax execute="search_form" render="linear1 linear2"/>
Donde los identificadores necesitan estar separados por espacios en blanco como linear1 linear2
y no separados por comas como linear1, linear2
(que solo funciona en p:ajax
).
Ver también:
- Comprender el proceso / actualización PrimeFaces y los atributos JSF f: ajax execute / render
- ¿Cómo averiguar la identificación del cliente del componente para la actualización / renderización de Ajax? No se puede encontrar el componente con la expresión "foo" a la que se hace referencia desde "barra"