jQuery MiniUI

标题: 表格indexColumn 翻页排序问题 [打印本页]

作者: lixiaoyang    时间: 2022-6-7 13:48:40     标题: 表格indexColumn 翻页排序问题

因业务需要
分别使用  table + pager 组件。
<div id="grid"  class="mini-datagrid"
     multiSelect="false"
     showPager="false"
     style="width:100%;height:100%;" idField="id" allowResize="false"
     borderStyle="border-left:0;border-right:0;" >
    <div property="columns">
        <div autoEscape="true" type="checkcolumn" width="40"  headerAlign="center" align="center"></div>
        <div autoEscape="true" field="_indextype" type="indexcolumn" width="40"  headerAlign="center" align="center">序号</div>
   
    </div>
</div><div class="mini-pager" pageSize="50" id="Pager" totalCount="0"  sizeList="[15,20,50,100]"></div>




如图所示
这个时候,翻页的时候,或者下一页。indexcolumn   列的序号怎么才能不从1开始,而是根据当前分页组件,来进行计算呢






作者: felt    时间: 2022-6-7 16:22:57

这只能绘制了。
  1. grid.on("drawcell", function (e) {

  2.     if (e.column.type == "indexColumn") {
  3.         var row = e.record;
  4.         var index = grid.indexOf(row);
  5.         var pageIndex = pager.getPageIndex();
  6.         var pageSize = pager.getPageSize();
  7.         var num = pageIndex * pageSize + index;
  8.         e.cellHtml = num;
  9.     }
  10. })
复制代码

作者: lixiaoyang    时间: 2022-6-7 16:44:41

felt 发表于 2022-6-7 16:22
这只能绘制了。

我封装了这样一个方法
function pageIndexChange (table,pager) {
        let pageIndex = 0;
        let pagesize = 50

        table.on("drawcell",function (e) {
            if(e.column.type === "indexcolumn"){
                e.cellHtml= e.rowIndex+1 + pageIndex * pagesize
            }
        });

        pager.on("pagechanged",function (e) {
            pageIndex = e.pageIndex;
            pagesize = e.pageSize;
        })

    }

问题是,需要在每个页面上引用,
我想有没有一个可以自动获取每个table对应的pager。然后自动计算,不需要每个页面引入,在页面初始化就自动绑定的。
在成熟的项目中一个一个引入,会非常的繁琐
作者: felt    时间: 2022-6-7 21:03:50

lixiaoyang 发表于 2022-6-7 16:44
我封装了这样一个方法
function pageIndexChange (table,pager) {
        let pageIndex = 0;

没有的,这两个都是分开的了,要不你设置个关联的id,通过id字符串来对应表格和分页插件
作者: lixiaoyang    时间: 2022-6-8 08:52:20

felt 发表于 2022-6-7 21:03
没有的,这两个都是分开的了,要不你设置个关联的id,通过id字符串来对应表格和分页插件 ...

好的,谢谢




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2