Ext grid如何在查处行最后加个统计行呢?

willis2008 2010-01-10 08:22:04
我查出数据后,想在最后一行加上一行总计,统计 列数据 这个该怎么加呢?
我看过ext 的例子exanmples 的grid 里有个totals.js的例子 里面
它用了一个插件 plugins: summary,
var summary = new Ext.ux.grid.GroupSummary();
var grid = new xg.EditorGridPanel({
ds: new Ext.data.GroupingStore({
reader: reader,
// use local data
data: app.grid.dummyData,
sortInfo: {field: 'due', direction: 'ASC'},
groupField: 'project'
}),
.......
它是用分组的
我查出来不需要分组 只要在最后一行再加 个统计的 这个该怎么写呢?
有没有类似例子呢?
...全文
737 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
山城忙碌人 2010-11-12
  • 打赏
  • 举报
回复
grid没有这个方法啊。
grid.startEditing(0,0);
shotyou你是怎么做的。。。。
shotyou 2010-05-05
  • 打赏
  • 举报
回复
grid.store.on("load",function(){

if(store.getRange().length>0)
{
// 定义你要把你合计的数据放在哪些列的下面
var newRecord=new Ext.data.Record.create([
{name:"listType"},
{name:"chargeAmount"},
{name:"returnAmount"},
{name:"sum"}
])
var records=store.getRange();
var chargeAmountSum=0.0;
var returnAmountSum=0.0;
var lastSum=0.0;
for(var i=0;i<records.length;i++)
{
//计算过程

chargeAmountSum+=records[i].get("chargeAmount");
returnAmountSum+=records[i].get("returnAmount");
if(i==parseInt(records.length)-1)
{
lastSum=records[i].get("sum");
}

}
//给上面定义的东西赋值
var p = new newRecord({
listType:"<b><font style='color:green;font-size:10px'>合计</font></b>",
chargeAmount:chargeAmountSum,
returnAmount:returnAmountSum,
sum:lastSum
})
//添加到最后1行
grid.stopEditing();
store.insert(grid.store.getCount(),p);
grid.startEditing(0,0);
}
})
//注意:在你进行增、删、该 操作后 只要调用store.reload()方法就可以自动计算了
xiuyouxu 2010-01-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 curacfyh 的回复:]
把你EditorGridPanel里的ds换成不分组的store,如JsonStore。
或者你在store的records中push一个自定义的record,其为你的合计数值
[/Quote]up
curacfyh 2010-01-14
  • 打赏
  • 举报
回复
把你EditorGridPanel里的ds换成不分组的store,如JsonStore。
或者你在store的records中push一个自定义的record,其为你的合计数值
chaiyh0826 2010-01-14
  • 打赏
  • 举报
回复
我也遇到了这个问题
关注中…
s000rd 2010-01-14
  • 打赏
  • 举报
回复
2楼说的不错

87,914

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧