* Visite o ALJUG - http://aljug.blogspot.com - Noticias sobre a comunidade java alagoana e do mundo * Visite o blog Mundo Gamificado www.mundogamificado.com.br - E vamos mudar o mundo! *

quinta-feira, 23 de maio de 2013

Eventos do PrimeFaces

Atualizado 25/06/2015 pelo User Guide do Primefaces 5.2
Update on June, 25 of 2015 by User Guide of the Primefaces 5.2.

Boa noite pessoal, estou mais uma vez escrevendo para dá dicas para quem está desenvolvendo com o framework PrimeFaces, hoje tive a ideia de escrever um post sobre as possibilidades de eventos que existem no PrimeFaces 3.5 no componente p:ajax.
Passei em dois momentos de muita busca para encontrar soluções para renderizar algumas ações em meu código e por isso motivou a eu escrever este post.
De acordo com o User Guide do Primefaces existe os eventos* abaixo:

*Estes eventos pode ser colocado no componente p:ajax.

active
blur
cancel
change

cellEdit
click
close
collapse

colReorder
colResize
complete

connect
connectionChange
contextMenu
dateSelect
dblselect

dialogReturn
disconnect
eventSelect

eventMove
eventResizeexpand
filter
geocode
idle
itemSelect

itemUnselect
keyup
load

markerDrag
message
mouseover
overlaySelect

page
pointSelectrate
reorder

resize
rowSelect

rowUnselect
rowReorder
rowEdit
rowEditInit
rowEditCancel
rowSelectRadio
rowSelectCheckbox
rowUnselectCheckbox
rowDblselect
rowTogglesave
select

sort
slideEnd

stateChange
swipeleft
swiperighttabChange
taphold
transfer

triggerEvent
toggle
toggleEvent
toggleSelect
unselect
viewChange

Todo esses pertence aos eventos do PrimeFaces. Lembrando que para algumas ações funcionarem é necessário colocar a tag process, como por exemplo, @this que segundo o User Guide é indicado para comportamentos da execução do AJAX, que seja explicitamente definido para uma melhor transformação parcial nas ações. Para cada situação existe a melhor opção que pode ser @this, @parent, @form, @namingcontainer, @none, @all.
Recentemente tive um problema com o rendered, onde mesmo com o componente ajax e o evento definido não funcionava, porém ao tirar o evento e definindo o update igual ao nome do form geral, funcionou, exemplo:


 //Não funcionou
  <p:ajax event="change" update=":formdivida:vencimento" process="@this"/>
/**
* O formdivida é o ID do componente h:form
* Devido o p:ajax só está renderizando o componente com o id vencimento não estava     * funcionando e quando eu renderizei o todo, como abaixo, a ação funcionou.
**/
 <p:ajax event="change" update=":formdivida" process="@this"/>

Espero ter ajudado a vocês.


3 comentários:

Marcao disse...

Dica foi util pra mim ! Muito obrigado!
abraco

Miguel SCJ disse...

@Marcao Valeu pelo feedBack!

Unknown disse...

Funcionou. Obrigada