MVC Kendo Grid通过单击extenrally放置按钮导出到excel

时间:2015-07-14 04:39:29

标签: kendo-ui kendo-grid kendo-asp.net-mvc

我有一个特殊的场景,可以在Kendo-UI MVC Grid上实现出色的导出功能。

场景:我想将Kendo MVC Grid导出到Excel工作表,但是当单击Grid外部的按钮时,我不想显示或使用Kendo提供的默认Export to excel按钮,相反,我想使用另一个html输入按钮。有人可以帮我吗?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:3)

请尝试使用以下代码段。

<div id="grid"></div>
<input type="button" onclick="downlaodexcel()" value="Export to excel" />
<script>
    $("#grid").kendoGrid({
        dataSource: {
            type: "odata",
            transport: {
                read: "http://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
            },
            pageSize: 10
        },
        sortable: true,
        pageable: true,
        columns: [
            { width: 300, field: "ProductName", title: "Product Name" },
            { field: "UnitsOnOrder", title: "Units On Order" },
            { field: "UnitsInStock", title: "Units In Stock" }
        ]
    });

    function downlaodexcel() {
        $("#grid").getKendoGrid().saveAsExcel();
    }
</script>

如果有任何疑虑,请告诉我。

答案 1 :(得分:0)

我知道Kendo网格现在已经内置了Kendo UI Q3 2014(2014.3.1119)版本的导出。但是,如果你像我一样坚持使用旧版本,并遇到.saveAsExcel()只导出当前页面的事实,试试这个。

var dataSource = $("#grid").data("kendoGrid").dataSource;
total = dataSource.total();
dataSource.pageSize(total);
$("#grid").getKendoGrid().saveAsExcel();
dataSource.pageSize(20);

基本上它设置页面大小以获取所有内容,然后将其设置回来。