如何保存所有绑定的数据,而不仅仅是可见页面的数据

问题描述 投票:0回答:1

首先,对不起,我的英语水平不够。

我的网格在页面上显示20行。要使用客户端模板进行Excel导出,我使用了论坛中的以下源代码。

function excelExportWithTemplates(e) {
    var sheet = e.workbook.sheets[0];
    var colTemplates = [];
    var data = this.dataSource.view();

    for (var i = 0; i < this.columns.length; i++) {
        if (this.columns[i].template) {
            colTemplates.push(kendo.template(this.columns[i].template));
        } else {
            colTemplates.push(null); 
        }
    }

    for (var i = 0; i < colTemplates.length; i++) {
        for (var j = 0; j < data.length; j++) {
            if (colTemplates[i] != null) {
                sheet.rows[j + 1].cells[i].value = colTemplates[i](data[j]);
            }
        }
    }      
}

例如,如果我总共有100个数据,只有20个数据,一个视图的大小,其余的不能应用。

它并不意味着ExcelExport不能正常工作,我的意思是使用ClientTemplate的ExcelExport只能工作20个。 (我的查看页数)

为此,添加data.Source.View我尝试将其更改为总计Total只是计算数字,没有进行转换。

转换所有数据我应该转到什么?

javascript kendo-ui kendo-grid kendo-asp.net-mvc
1个回答
2
投票

view()方法将仅返回视口上的渲染数据。请改用data()方法,它将返回所有dataSource的数据:

var data = this.dataSource.data();
© www.soinside.com 2019 - 2024. All rights reserved.