2014-07-15 2 views
3

p:dataTable 행을 클릭 한 후 표시되는 p:dialog이 있습니다. 나는 p:dialogp:commandButton을 가지고 있으며이 같은 action 있습니다p : commandButton 액션 후에 p : dialog를 닫는 방법?

<p:commandButton value="Cambiar" action="#{adminUsuarios.cambiarPerfil()}" update="tblUsuarios" /> 

방법 cambiarPerfil() :

잘 작동
public void cambiarPerfil() { 
    // More stuff here 
    this.listaUsuarios = null; // Clear the list 
} 

하지만 나는 p:commandButton action에게 p:dialog을 닫으려면. 당신은 당신의 commandButtononcomplete 클라이언트 측 방법을 추가 할 필요가

<h:form id="myForm"> 
    <!-- More stuff--> 
    <p:dialog id="myDialog" widgetVar="editarDialog" header="Editar perfil de usuario #{adminUsuarios.usuarioSeleccionado.id_User}" resizable="false" width="400" showEffect="size" hideEffect="size"> 
     <p:commandButton value="Cambiar" action="#{adminUsuarios.cambiarPerfil()}" update="tblUsuarios" /> 
    </p:dialog> 
</h:form> 

답변

4

:

대화입니다. 당신이 PF5.0를 사용하는 경우 editarDialog이 대화의 widgetVar이 어디

<h:form id="myForm"> 
    ... 
    <p:dialog id="myDialog" widgetVar="editarDialog" ...> 
     <p:commandButton value="Cambiar" action="#{adminUsuarios.cambiarPerfil()}" update="tblUsuarios" oncomplete="editarDialog.hide();"/> 
    </p:dialog> 
</h:form> 

당신은 oncomplete="PF('editarDialog').hide();"로 변경해야 할 수도 있습니다.

+1

나는 또한 이렇게했다 :'RequestContext context = RequestContext.getCurrentInstance(); context.execute ("editarDialog.hide();");'cambiarPerfil() 메소드 내부. –

+0

@KazMiller 그래서 나 * (* 내 코멘트 Shawsank 보너스 영화에서 표절) – dirai

관련 문제