日期:2014-05-16  浏览次数:20328 次

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的第一行中