Richfaces旋钮事件执行的顺序

Richfaces按钮事件执行的顺序

Richfaces按钮事件执行的顺序,如下这段标签代码:

 

 <a4j:commandButton
       action="#{XXX.action4}"
       actionListener="#{XXX.action1}"
       oncomplete=""
       reRender="" >
       <f:actionListener binding="#{XXX.action2}" />
       <f:actionListener binding="#{XXX.action3}" />
 </a4j:commandButton>

这个button是比较常见的,里面有action,actionListener,oncomplete,reRender一些事件,我们了解这些事件的执行顺序和机制有助于我们进一步的清楚用法,我简单的说下了:

 

button上的actionListener事件先执行,但这里注入了f:actionListener ,先执行button自带的actionListener,然后按顺序执行注入f:actionListener

actionListener执行完后,接下来执行action

action执行完后,然后执行reRender事件(用来重渲染一些标签)

reRender执行完后,最后执行oncomplete事件(JS事件)

 

综上所述,我们执行的顺序是:action1,action2,action3,action4,reRender,oncomplete