2013-07-05 5 views
9

Mam datagrid z paginacją. Kiedy zmieniam stronę, chcę zaktualizować niektóre komponenty na stronie, ale nie wiem, jak uzyskać to wydarzenie. Niektóre kodu:Zaktualizuj komponent przy zmianie strony na podstawach danych datagrid z paginacją

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

chcę coś takiego update="buttons" w DataGrid, więc gdy zmienia stronę, zaktualizuj przycisków w zależności od disabled="" atrybucie przycisków, jest to możliwe?

Pozdrowienia.

Odpowiedz

15

Wreszcie zamiast <p:dataGrid ... /> użyłem <p:dataTable ... /> z <p:ajax ... /> wewnątrz, to jest mój kod:

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

I update metoda:

public void update(PageEvent event) { 
    int var = event.getPage(); 
    ... 
    (update components values of dataTable and buttons using var) 
    ... 
} 
Powiązane problemy