Slickgrid分组扩展/崩溃奇怪的行为

编程入门 行业动态 更新时间:2024-10-09 21:24:19
本文介绍了Slickgrid分组扩展/崩溃奇怪的行为的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正在使用SlickGrid进行分组功能并且有一些奇怪的行为。

I am using SlickGrid with grouping features and got some strange behaviour.

请检查 jsFiddle 。

var ReportData = { "cols":{ "date":"Date", "status":"Status", "dataField":"Data field" }, "data":[ {"id":0,"date":"First","status":"Accepted","dataField":"1000"}, {"id":1,"date":"Second","status":"Accepted","dataField":"2000"}, {"id":2,"date":"Third","status":"Accepted","dataField":"3000"}, {"id":3,"date":"Fourth","status":"Accepted","dataField":"4000"}, {"id":4,"date":"Fifth","status":"Accepted","dataField":"5000"}, {"id":5,"date":"Sixth","status":"Canceled","dataField":"6000"}, {"id":6,"date":"Seventh","status":"Canceled","dataField":"7000"}, {"id":7,"date":"Eight","status":"Canceled","dataField":"8000"}, {"id":8,"date":"Ninth","status":"Canceled","dataField":"9000"}, {"id":9,"date":"Tenth","status":"Rejected","dataField":"1000"}, {"id":10,"date":"Eleventh","status":"Rejected","dataField":"2000"}, {"id":11,"date":"Twelfth","status":"Rejected","dataField":"3000"} ] }; var options = { enableCellNavigation: true, editable: true, autoHeight:true, forceFitColumns: true, }; function groupBy() { dataView.setGrouping([{ getter: "status", aggregators: [ new Slick.Data.Aggregators.Sum("dataField"), ], collapsed: true, aggregateCollapsed: true, lazyTotalsCalculation: true },{ getter: "date", aggregators: [ new Slick.Data.Aggregators.Sum("dataField"), ], collapsed:true, aggregateCollapsed: true, lazyTotalsCalculation: true },]); } function sumTotalsFormatter (totals, columnDef) { var rowData = ''; // Get sum var val = totals.sum && totals.sum[columnDef.field]; if (val != null) { rowData += "<b>" + (Math.round(parseFloat(val) * 100 ) / 100) + "</b>"; } return rowData; } function makeGridColumns(data){ var that = this; var columns = []; var id = 0; // Parse given result for SlickGrid jQuery.each(data, function(label, name) { var item = { id: id++, field: label, name: name, focusable: false, groupTotalsFormatter: sumTotalsFormatter, } columns.push(item); }); return columns; } $(function () { var groupItemMetadataProvider = new Slick.Data.GroupItemMetadataProvider(); dataView = new Slick.Data.DataView({ groupItemMetadataProvider: groupItemMetadataProvider, inlineFilters: true }); var columns = makeGridColumns(ReportData.cols); grid = new Slick.Grid("#myGrid", dataView, columns, options); // register the group item metadata provider to add expand/collapse group handlers grid.registerPlugin(groupItemMetadataProvider); // wire up model events to drive the grid dataView.onRowCountChanged.subscribe(function (e, args) { grid.updateRowCount(); grid.render(); }); dataView.onRowsChanged.subscribe(function (e, args) { grid.invalidateRows(args.rows); grid.render(); }); // initialize the model after all the events have been hooked up dataView.beginUpdate(); dataView.setItems(ReportData.data); groupBy(); dataView.endUpdate(); })

当点击接受组并展开时,你将看到除第三之外的所有选项,但是此选项(在奇怪的地方)将看到总数。当您点击之后,例如,选项Second,您将看到Third。

When click on "Accepted" group and expand, you will see all options, except "Third", but total will be seen for this option (in strange place). When you will click after that on, for example, option "Second", you will see the "Third".

我尝试使用原始SlickGrid从头开始创建示例,但也遇到了同样的问题。

I tried to create this from scratch, using original SlickGrid examples, but got the same problem.

请问您能给出一些建议/解决方案吗?

Can you give some advice/solution, please?

谢谢!

推荐答案

问题在于SlickGrid本身。我在Github找到了解决方案: github/mleibman/SlickGrid/issues/926

The problem was in the SlickGrid itself. I found solution in Github: github/mleibman/SlickGrid/issues/926

更多推荐

Slickgrid分组扩展/崩溃奇怪的行为

本文发布于:2023-11-22 02:12:48,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1615570.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:奇怪   Slickgrid

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!