JSF之定時刷新

用a4j:poll可以實現jsf頁面定時刷新

下面是一個示例

<a4j:region>
<h:form>
<a4j:poll interval="2500" reRender="list"/>
</h:form>
</a4j:region>

其中,interval="2500"是多長時間刷新一次,單位是毫秒,示例中2.5秒刷一次

reRender="list" 是刷新的內容,list是要刷新控件的id

ps:巧用兩個a4j:poll控制刷新

示例如下

<a4j:region>
<h:form>
<a4j:poll id="list1" interval="2500" reRender="list"/>
</h:form>
</a4j:region>
<a4j:region>
<h:form>
<a4j:poll id="list" interval="2500"
enabled="#{socketInspectWindow.map['socketInspectTable'].refreshFlag}"
actionListener="#{socketInspectWindow.refreshAction}"
reRender="logInfo,importLogInfo,soundForm">
</a4j:poll>
</h:form>
</a4j:region>

其中enabled="#{socketInspectWindow.map['socketInspectTable'].refreshFlag}"是一個boolean型變量,當需要刷新的時候refreshFlag變成true,actionListener="#{socketInspectWindow.refreshAction}"做的事情是當刷新完以後將refreshFlag改回false

基本原理是第一個poll一直在刷新第二個poll,第二個poll中一旦refreshFlag變成true時,就立即執行刷新
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章