在使用Extjs框架时,有时为了在信息列表中显示数据项的序号,这就要构造一些方法来显示序号,其方法有两种,具体如下:

1、方法一

  对 Ext.grid.PageRowNumberer 进行扩展,详细代码下:

 /* 显示序号  方法1 */
        Ext.grid.PageRowNumberer = Ext.extend(Ext.grid.RowNumberer, {
            width: 50,
            text: '序号',
            renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) {
                if (store.lastOptions.params != null) {
                    var pageindex = store.lastOptions.params.start;
                    return pageindex + rowIndex + 1;
                } else {
                    return rowIndex + 1;
                }
            }
        });

 

  然后在创建 grid 控件时,在columns 属性中引用 :

        // grid 中显示的各列
            columns: [
                new Ext.grid.PageRowNumberer(), // 获取序号,方法1
           ]

 

 

方法2: 直接在 columns 属性中使用 render 函数来构造

           // grid 中显示的各列
            columns: [{
                    text: '序号',
                    width: 50,
                    sortable: false,
                    renderer: function (value, metadata, record, rowIndex) {
                        return rowIndex + 1; // 获取序号,方法2
                    }
                }
     ]

 

posted on 2015-11-01 10:52  wisdo  阅读(1757)  评论(0编辑  收藏  举报