rich:dataScroller如何每10秒切换一次页面?

时间:2010-12-14 09:41:53

标签: java ajax jsf richfaces

我有一个富有的dataTable和dataScroller。在每个页面中,我需要显示5条记录。记录计数动态变化。我每隔20秒刷新一次dataTable以查看是否有新记录。

如果记录超过5条,则dataTable将有两个或多个页面。

如果dataTable有多个页面,是否可以说dataScroller每隔10秒切换一次页面?在显示最后一页之后,它应该返回到第一页。

由于

3 个答案:

答案 0 :(得分:0)

我想这不是不可能的。请尝试查看a4j:poll组件。将尝试并希望发布更多更新

答案 1 :(得分:0)

AFAIK,默认的richfaces无法做到这一点。我认为您可以使用<a4j:poll>定期刷新表格中的数据,但不能自动切换页面。 但是,<rich:datascroller>有一个客户端API(描述为here)。 将其与javascript timing结合使用可能是实现页面切换工作的方法。

答案 2 :(得分:0)

好吧,您可以将dataScroller与bean绑定(使用de prop。“binding”)并使用javascript“单击一个执行bean函数的隐藏按钮”转到下一页。

XHTML:可

<script type="text/javascript">
   var t;
   t=setTimeout("timedCount()", 1000); 

   function timedCount() {
      document.getElementById('formName:button').click();

      t=setTimeout("timedCount()", 10000); 
   }
</script>

(...)

<h:commandButton id="button" action="#{bean.scrollNext}" reRender="tableID"
                 style="visibility:hidden;"/>

(...)

豆:

HtmlDataScroller scroll; //(im not sure about the "HtmlDataScroller")

(...)

public void scrollNext() { scroll.next(); }

(...)

//Gets and sets to bind the scroller
get; set;...

别忘了创建一个htmlDataScroller的新实例,否则你会得到一个nullPointException ..