2013-07-05 2 views
9

Ho un datagrid con impaginazione. Quando cambio la pagina voglio aggiornare alcuni componenti nella pagina, ma non so come ottenere l'evento. Alcuni Codice:Aggiornamento componente al cambio di pagina su datagrafica di primavere con paginazione

<p:panelGrid id="buttons"> 
    <p:commandLink value="Link1" action="#{myBean.method1}" disabled="#{myBean.boolean1}" /> 
    <p:commandLink value="Link2" action="#{myBean.method2}" disabled="#{myBean.boolean2}" /> 
</p:panelGrid> 
<p:dataGrid var="myVar" paginator="true" value="#{myBean.listOfObjects}"> 
    ... 
    ... 
</p:dataGrid> 

voglio qualcosa di simile update="buttons" in DataGrid, in modo che quando la pagina cambia, aggiornare i pulsanti a seconda disabled="" attributo dei pulsanti, è possibile?

Saluti.

risposta

15

Infine, invece di <p:dataGrid ... /> ho usato <p:dataTable ... /> con <p:ajax ... /> dentro, questo è il mio codice:

<p:dataTable var="myVar" paginator="true" rows="1" value="#{myBean.listOfObjects}"> 
    <p:ajax event="page" update="buttons" listener="#{myBean.update}" /> 
    ... 
    ... 
</p:dataTable> 

E update metodo:

public void update(PageEvent event) { 
    int var = event.getPage(); 
    ... 
    (update components values of dataTable and buttons using var) 
    ... 
} 
Problemi correlati