KendoUI导出excel不正确地折叠页脚

时间:2016-01-15 14:45:10

标签: html asp.net excel kendo-ui kendo-grid

我的kendoUi网格上有一个列,其中包含整个列的锚标记,包括页脚,这是我的代码:

columns.Bound(p => p.NonFlagged).Title("Non Flagged").Width(100) .ClientTemplate( "<a onclick='ShowPatientGapDetailsModal(" + "#=MeasureId#" + ")' href='\\#'>#=NonFlagged#</a>") .ClientFooterTemplate("<a onclick='ShowPatientGapDetailsModal()' href='\\#'>#=sum#</a>");

它适用于除页脚之外的所有行,它显示了完整的html锚标记,如下所示:enter image description here

有没有人见过这个或有任何建议?

1 个答案:

答案 0 :(得分:1)

这是因为网格只导出数据。不是模板。要将使用模板导入excel导出,您必须使用ExcelExport事件。

这是一个小代码片段,希望对您有所帮助。 无论如何,我没有使用页脚和excel,但我相信会有与普通数据相同的规则。可能它不会像你需要的那样起作用,但可以帮助你找到正确的方向。

当我在单元格或日期字段等中有复选框时,我遇到了这种行为。

excelExport: function (e) {
    var sheet = e.workbook.sheets[0];
    var data = [];
    for (var i = 1; i < sheet.rows.length; i++) {
        var dataItem = {
            FieldWithMyTemplate: e.data[i].FieldWithMyTemplate, // In e.data are data from row in grid
        };
        var row = sheet.rows[i];

        for (var j = 0; j < row.cells.length; j++) {
                var template = kendo.template(this.columns[j].template);
                row.cells[j].value = template(dataItem);
        }
    }
};

编辑:忘记在e.Data中提到第一个索引([0])是来自标题的数据。所以在最后一个将是你的页脚数据。