segunda-feira, 13 de setembro de 2010

Painel modal de status “loading” ou processando ... com a4j:status


Problema:

Como implementar uma tela modal de status “loading” com Ajax?

Solução:

Achei um post bem bom que mostra como fazer, abaixo segue uma copia de trechos do post (necessário para garantir a permanecia da informação):

O a4j:status é um indicador de uma solicitação Ajax. Apresenta um aviso ao usuário enquanto o sistema está processando sua solicitação.
Este componente tem dois estados: start e stop.
O estado start indica que uma solicitação Ajax está em andamento.
O componente muda para o estado stop quando a solicitação Ajax é finalizada.
Quando uma solicitação Ajax é enviada o evento onstart do componente a4j:status é acionado, então ele abre o ModalPanel com o id “panel_loading”.
Quando a solicitação é finalizada, o componente muda seu estado para onstop e chama a função responsável em fechar o ModalPanel.


<rich:modalPanel id="panel_loading" autosized="true">

<h:graphicImage url="/img/loading.gif" style="border:0px; vertical-align: middle;" />

<rich:spacer width="20" />

<h:outputText value="Aguarde..." />

</rich:modalPanel>

<a4j:status id="loading" onstart="Richfaces.showModalPanel('panel_loading')" onstop="Richfaces.hideModalPanel('panel_loading')" />
Ate mais ! ;)

Nenhum comentário:

Postar um comentário