【问题标题】:Slickgrid - How to update data in the dataview?Slickgrid - 如何更新数据视图中的数据?
【发布时间】:2013-08-30 22:15:40
【问题描述】:

我有一个实例,我需要从根本上清除数据视图中的所有数据并为数据视图提供一组新数据。

这是我目前拥有的。 :

GridView.beginUpdate();
GridView.setItems(sortedData);
GridView.endUpdate();
GridView.refresh();

我已经尝试过这些功能和许多其他功能。 :

grid.invalidate();
grid.render();
grid.invalidateAllRows();

疯狂的是,当我启动 dataview (gridview) 时,它的计数从 17 开始。

SortedData 的计数为 91,在 setItems 之后计数为 84。我不确定这是如何发生的。我已经阅读了关于删除和添加这个数据视图主题的每篇文章和 stackoverflow 条目,并尝试了所有这些。

完全困惑,因为我一直试图弄清楚这一点,希望有人以前遇到过这种情况。目前,认为这可能是由于我订阅了一些东西。

@Kzahel 我实际上有一个这样的订阅集。 :

dataView.onRowCountChanged.subscribe(function (e, args) {
            grid.updateRowCount();
            grid.render();
        });

上面实际上是在处理我的行数更新。

【问题讨论】:

    标签: javascript slickgrid


    【解决方案1】:

    试试 grid.updateRowCount() 我也有 slickgrid 和动态内容的问题。但是大多数问题在调用该函数后就消失了。看: https://github.com/kzahel/jstorrent/blob/master/examples/grid.js#L172

    【讨论】:

      【解决方案2】:

      好的,这是我的解决方案。 :

      GridView.beginUpdate();
      GridView.setItems(sortedData);
      GridData = sortedData;
      GridView.endUpdate();
      GridView.refresh();
      

      我在其他领域使用 GridData 的函数导致了许多问题。

      【讨论】:

      • 你的意思是 GridView.data = sortedData 吗?这里发生了什么?你能链接到一个jsfiddle吗?
      猜你喜欢
      • 2017-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-21
      • 2011-11-26
      • 2012-08-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多