是否可以将网格数据源复制到新数据源,这是一个加载所有数据的新数据源? 例如,我有一个页面大小为10的kendo网格,我将如何将其复制到一个新的数据源,这将加载所有数据并忽略分页。 T.I.A
答案 0 :(得分:0)
某些方面可能取决于您如何定义第一个(可分页)数据源的DataSource。但基本上您需要复制原始数据源,然后更改pageSize
和serverPaging
的值,最后使用setDataSource
将其分配给第二个网格。
示例:
// First DataSource definition
var ds1 = {
transport: {
read: ...
},
pageSize: 10,
schema : {
model: {
...
}
}
};
// Copy ds1 definition into ds2
var ds2 = ds1;
// Change values for serverPaging and pageSize
ds2.serverPaging = false;
ds2.pageSize = 0;
// Create new DataSource object and assign it to the second Grid
grid2.setDataSource(new kendo.data.DataSource(ds2));
您可以在以下JSFiddle中看到此内容:http://jsfiddle.net/OnaBai/uj6sr9ez/
答案 1 :(得分:0)
来自@Will评论,我认为更好的解决方案是:
// First DataSource definition
var ds1 = {
// ...
// Create the new kendo datasource, so ds1 is not modified
var ds2 = new kendo.data.DataSource(ds1);
ds2.pageSize(-1);
ds2.serverPaging = false;
grid2.setDataSource(ds2);
答案 2 :(得分:0)
请尝试执行以下操作:
var copyDataSource= kendo.data.DataSource.create({
data: originalDataSource.data()
});