[Resolvido] Client-Side, como fechar um dialog no primefaces sem passar pelo backend?

Meu dialog (tentei de tudo):

<p:dialog header="Resumo do Usuário" widgetVar="resumoDialog" resizable="false" id="usrResumo"
                          showEffect="clip" hideEffect="clip" modal="true" width="340" height="440" style="text-align: center">
                    <p:panelGrid columns="2">
                        <h:outputText value="Nome:" style="font-weight:bold" />
                        <h:outputText value="#{pessoaMB.pessoaTemp.nome}"/>
                    </p:panelGrid>
                    <p:commandButton global="false" process="@this" readonly="true" transient="true" immediate="true" value="OK" style="margin-top: 5px;" onsuccess="resumoDialog.hide();" onclick="javascript:void(0);"/>
                </p:dialog>

Mas quando clico aí no commandButton para fechar o dialog ele carrega uma requisição ajax mas se eu tentar fechar através do botão de fechar do dialog, ele não gera nenhuma requisição, já vai logo fechando… Como fecho essa bendita direto na view? :evil:

o que deveria ocorrer ao apertar o botão? (fora fechar o dialog claro)

Tente com oncomplete="resumoDialog.hide()"
É o que uso.

Bem… Analisando aqui com o firebug ele ainda continua enviando uma requisição ajax para o server (diferentemente de clicar no botão de close do dialog que fecha a tela e não manda nenhuma requisição) mas parece ser o mais correto o oncomplete mesmo… Sobre o onclick=“javascript:void(0);” alguém poderia dizer se está correto isso? :roll:

Queria facilitar a usabilidade IHM mas tô me vendo obrigado a usar o botão de fechar do prime para aumentar o desempenho…

Olá

O que geralmente faço é chamar o hide() no onclick e retornar false para ele não executar o ajax, ficando assim no seu caso:

<p:commandButton global="false" process="@this" readonly="true" transient="true" immediate="true" value="OK" style="margin-top: 5px;" onclick="resumoDialog.hide();return false;"/>  

Testa ai e fala se deu certo.

Carlos

lordcarlos Funcinou completamente! Muito obrigado viu! Valeu!!! :smiley: