2013-06-27 14 views
6

Mam pytanie. Czy można aktualizować dwa komponenty naraz? próbuję kod jak poniżej:Czy atrybut "aktualizacja" może jednocześnie aktualizować dwa składniki?

<h:panelGroup id="pickList"> 
    <p:panel rendered="#{customCalender.visible}" widgetVar="searchTableBox"> 

    //Some codes..... 

     <p:commandButton value="Cancel" update="pickList" actionListener="#{customCalender.closeList}" style="background:#25A6E1;color:red;font-family:'Helvetica Neue',sans-serif;font-size:10px;border-radius:4px;" /> 
     <p:commandButton value="Save" update="custDataTablePanel" actionListener="#{customCalender.saveTargetList}" style="background:#25A6E1;color:red;font-family:'Helvetica Neue',sans-serif;font-size:10px;border-radius:4px;"/> 
    </p:panel> 
</h:panelGroup> 
.... 
..... 
<h:panelGroup id="custDataTablePanel"> 
    <p:panel rendered="#{customCalender.dataTableVisible}"> 
.. 
.. 
    </p:panel> 
</h:panelGroup> 

Teraz chcę po kliknięciu na przycisk Save ukrywa <h:panelGroup id="pickList"> i wyświetla <h:panelGroup id="custDataTablePanel"> więc mam dwie wartości logiczne kontrolować ich widoczność. ale muszę zaktualizować dwa z tych paneli. Jeden zrobiłem z update="custDataTablePanel" wyświetla tabela danych po kliknięciu przycisku. (W metodzie saveTargetList zaktualizowałem widoczność custDataTablePanel do true), ale nie mogę ukryć panelu pickList.

Więc wędrowałem, czy istnieje sposób, aby ukryć i pokazać te dwa panele jednym kliknięciem przycisku. Proszę sugerować.

Odpowiedz

8

Można użyć wielu elementów w atrybucie aktualizacji oddzielone spacją

<p:commandButton update="element1 element2"/> 

również można aktualizować cały formularz za pomocą update="@form"

+0

Próbowałem to '", ale w tym przypadku mój przycisk polecenia nie jest wyświetlany. – NDeveloper

+1

to działało teraz. Dziękuję. Być może robiłem to w niewłaściwy sposób przedtem !! tak dzięki ... .. – NDeveloper

Powiązane problemy