extjs grid 合计

场景:Extjs grid增多合计行

Extjs grid增加合计行

      这里讲诉的合计方法是在前台增加合计行的方法,不包含后台计算合计的方法。

如果我们需要在grid的第一行增加一行合计的时候,只需要将grid的store数据进行循环,将需要合计的列一次叠加后,返回一个合计值,将合计值赋给定义好的record,然后将此record插入到grid内。代码如下:

var p = new Ext.data.Record({fields : ['name', 'num']});//定义一行要插入的record

 var sum=0;

 Ext.getCmp('listgrid').store.each(function(record){ 
      if(record.data.num!=null)

                   sum+=Number(record.data.num);//叠加需要合计的列值返回给sum
      });     

               p.set('name','合计');//给新行赋值,合计放到name列中
               p.set('num,sum);//合计值放到num列中

     }

Ext.getCmp('listgrid').store.insert(0, p);//将赋值后的新行插入到grid的第一行中