将Kendo网格导出到Excel时如何修改值?

时间:2015-03-30 21:27:41

标签: html kendo-ui telerik kendo-grid export-to-excel

所以,我正在尝试寻找一种方法来修改导出为ex​​cel的值,就像使用ClientTemplate()修改Kendo Grid中的值一样。目前,我导出到Excel的方式是通过这种方法:

.Excel(excel => excel
        .FileName("InvitedList.xlsx")
        .AllPages(true)
        .Filterable(true)

我使用.ClientTemplate()方式:

@(Html.Kendo().Grid<(TableLocation)>()
        .Name("List of Invited")
        .Columns(col => {
            ...Some Columns...
            columns.Bound(p => p.RSVP).Title("Is Attending?").Width(75).ClientTemplate("#if(RSVP == 0){#No#}else{#Yes#}#");
            ...More Columns...
        })
        .ToolBar(toolbar => {
            toolbar.Excel();
        })
        ...
        .Excel(excel => excel
            .FileName("InvitedList.xlsx")
            .AllPages(true)
            .Filterable(true)
        )
        ...
        .DataSource(dataSource => dataSource
            .Ajax()
            ...
        )
)

我还没有在StackOverflow中找到方法,而且Telerik Docs似乎只有脚本解决方案,而我正在寻找一种方法,可以通过cshtml页面上的@转义来实现。

感谢您的任何建议!

编辑:添加了一些更多细节,希望能够澄清一些疑问。

1 个答案:

答案 0 :(得分:0)

如果查看他们的示例(http://demos.telerik.com/aspnet-mvc/grid/excel-export),看起来ClientTemplate()格式将导出到Excel。

但需要注意的是,您使用@转义引用了 - 这在ClientTemplates中不起作用。您必须使用它们的语法,例如:

.ClientTemplate("#=myValue#")