[RESOLVIDO]Fazer h:selectOneMenu retornar ao valor padrao apos fechar um <p:dialog>

4 respostas
furacao123

galera como faço para fazer um selectOneMenu voltar ao valor padrao, quando fecho por exemplo um dialog com primefaces?

tenho um combo em um dialog faço a manipulação do mesmo, mas depois que fecho os dados ainda ficam no dialog, segue o dialog…

&lt;p:dialog&gt; &lt;h:selectOneMenu id="cbEnvioEmail" value="#{nFeController.tipoEmail}"&gt; &lt;f:selectItem itemLabel="Selecione..." itemValue="0" /&gt; &lt;f:selectItem itemLabel="E-mail Cadastrado" itemValue="1"/&gt; &lt;f:selectItem itemLabel="Inserir E-mail" itemValue="2"/&gt; &lt;p:ajax event="change" update="pnlTipoEmail" listener="#{nFeController.selecionarTipoEmail}" process="@this" /&gt; &lt;/h:selectOneMenu&gt; &lt;/p:dialog&gt;

preciso que o combo volte ao indice 0 selecionado ao fechar o dialog como faço isso?

4 Respostas

altitdb

De momento vejo que você poderia fazer de duas formas…

1º Utilizar o CloseEvent do Dialog e dentro do método que utiliza o CloseEvent colocar isso:

nFeController.tipoEmail = 0

e atualizar o “cbEnvioEmail”.

2º Quando utilizar algum botao no Dialog para fechar o Dialog enviar o valor “0” pro “tipoEmail” do seu Bean.

Então você utiliza o:

<f:setPropertyActionListener target="#{nFeController.tipoEmail}" value="0" />

e atualiza o “cbEnvioEmail”.

xD~~

furacao123

mas onde eu tenho este metodo closeEvent? nao encontrei nos atributos do p:dialog

quanto a 2 opção fiz o seguinte

&lt;p:commandButton id="btnCancelarEmail" value="Cancelar" onclick="dlgEmail.hide()" image="btnCancelar" type="button" update="cbEnvioEmail"&gt; &lt;f:setPropertyActionListener target="#{nFeController.tipoEmail}" value="0" /&gt; &lt;/p:commandButton&gt;

mas sem resultado o combo continua vindo com o indice ja selecionado anteriormente

furacao123

resolvido o dialog possui closeListener nesse listener eu passo o valor zero para o tipo Email…segue o exemplo onde isso é feito pelo primefaces

http://www.primefaces.org/showcase/ui/dialogClose.jsf

altitdb

Na opção que tinha o CommandButton faltou você atualizar o campo desejado!

Abraço.

Criado 18 de outubro de 2011
Ultima resposta 19 de out. de 2011
Respostas 4
Participantes 2