繁体   English   中英

如何从Kendo网格中删除所有行

[英]How to remove all rows from a Kendo grid

我正在使用Kendo grid

我想使用JavaScriptKendo grid删除所有行。

我使用for循环删除它们但我想找到删除所有行的最佳方法。

尝试以下代码。

$("#Grid").data('kendoGrid').dataSource.data([]);

为演示点击这里

这并没有真正移动网格的底层数据,它只是清除显示的行。 如果对“空”网格进行排序,则所有行都会重新出现,形成基础数据。

如果不是如下所示删除您的数据:

dataSource.data([]);

而是用一个新的数据数组替换它,比如称为result.Data ..就像这样:

dataSource.data(result.Data)

您将看到数据交换,但如果排序或页面,则再次显示原始数据。

任何人都知道如何实际更改数据并让新数据替换网格的源数据?

更新:答案是使用setDataSource方法:

var grid = $("#grid").data("kendoGrid");
var dataSource = grid.dataSource;
dataSource.data([]);//clear out old data
dataSource.data(result.Data);//add new data
grid.setDataSource(result.Data);//set the new data as the grids new datasource
dataSource.sync();//refresh grid

如果您正在使用Angualrjs,请尝试遵循以下代码:

 $scope.gridData.data([]);

gridDatak-data-source="gridData"

这对我来说很好。

var grid = $("#Grid").data("kendoGrid");
var newDataSource = new kendo.data.DataSource({
    data: []
});
grid.setDataSource(newDataSource);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM