如何在 primefaces 6.2 上设置自动下一个数据网格分页

How to set auto next datagrid pagination on primefaces 6.2

我已经试过了,但是没有用。 how to make automatic paginator in p:dataGrid

 <p:dataGrid var="serv" id="datagridID" widgetVar="datagridWid" value="#{telemetryServiceBacking.telGet}" columns="3" layout="grid"
         rows="6" paginator="true" paginatorTemplate="Number of : #{telemetryServiceBacking.telGet.size()} 
         {CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}">

这是我的 javascript

 <script>
        function timer(){
                        var myVar = setInterval(myTimer, 5000);
                    }

                    function myTimer() {
                        var myvar1 = datagridWid.cfg.paginator.page;
                        var myvar2 = datagridWid.cfg.paginator.pageCount - 1;
                        if(myvar1 == myvar2){
                             PF('datagridWid').getPaginator().setPage(0);
                        }
                        else {
                            PF('datagridWid').getPaginator().setPage(datagridWid.paginator.getCurrentPage() + 1);
                        }
                }
    window.onload = timer;
 </script>

设置页面手册工作完美,但我不知道如何在 <p:datagrid> 中使用 javascript

获取当前页和总页
PF('datagridWid').getPaginator().setPage(1);

并且,是否有新更新 primefaces 的文档?

在此处获取 PF 6.2 上的当前页面

('datagridWid').getPaginator().page or PF('datagridWid').getPaginator().getPage()

因为昨天我不知道获取当前页面的语法,所以我对支持bean 使用了简单的验证。

    int maxList = 0; 
    int list = 23;
    pageIndex = list / 12; //12 means 12 data each page
    maxList = list % 12;
    if(maxList > 0) {
        pageIndex = pageIndex + 1;
    }

    pageIndexString = pageIndex + ""; //convert to string

在我的 xhtml 上:

<script>

                        var i = 0;
                        var pageIndexString = #{yourBackingBean.pageIndexString};
                        function timer(){
                            var myVar = setInterval(myTimer, 5000); //means 5second
                        }

                        function myTimer() {
                            if(i != pageIndexString){
                                PF('datagridWid').getPaginator().setPage(i+1);
                                i++;
                            }
                            else if(i == pageIndexString){
                                PF('datagridWid').getPaginator().setPage(0);
                                i = 0;
                            }
                        }
                        window.onload = timer;
</script>