[英]Kendo UI grid export excel and pdf export, no file created
I am trying to create a kendo grid with excel export. 我正在尝试使用excel导出创建一个kendo网格。 My data is shown precisely as I want it and the grid works fine.
我的数据正好按照我的要求显示,网格工作正常。 However, the saveAsExcel function triggers the excelExport event, but no file is created.
但是,saveAsExcel函数会触发excelExport事件,但不会创建任何文件。 Same problem with the pdf export.
与pdf导出相同的问题。 Here is my grid options:
这是我的网格选项:
grid = $("#grid").kendoGrid({
toolbar:["excel","pdf"],
height: 500,
scrollable: true,
groupable: true,
sortable: true,
filterable: false,
excel: {
allPages:true,
filterable:true
},
excelExport: function(e) {
console.log('Firing Export');
console.log(e.workbook);
console.log(e.data);
},
pdfExport: function(e){
console.log('PDF export');
},
columns: [
{ field: "date", title: "Time", template: "#= kendo.toString(kendo.parseDate(date), 'MM/dd/yyyy') #", width: '120px'},
{ field: "customer", title: "Customer" },
{ field: "amount", title: "Total", format: "{0:c}", width: '70px', aggregates: ["sum"]},
{ field: "paid_with", title: "Payment", width: '130px'},
{ field: "source", title: "Source" },
{ field: "sale_location", title: "Sale Location" }
]
}).data("kendoGrid");
This ajax is called whenever the search parameters for the data is changed. 只要更改数据的搜索参数,就会调用此ajax。 Where I refresh the datasource.
我刷新数据源的地方。
$.ajax({
'url':'/POS/ajax/loadTransactionsDetailsForDay.php',
'data':{
filters
},
'type':'GET',
'dataType':'json',
'success':function(response) {
var dataSource = new kendo.data.DataSource({
data: response.data.invoices,
pageSize: 100000,
schema: {
model: {
fields: {
date: {type: "string"},
customer: { type: "string" },
amount: { type: "number" },
paid_with: {type: "string"},
source: {type:"string"},
sale_location: {type:"string" }
}
}
}
});
grid.setDataSource(dataSource);
grid.refresh();
}
});
The output from my console log is. 我的控制台日志的输出是。
Firing Export.
A worksheet object. 工作表对象。
Object {sheets: Array[1]}sheets: Array[1]0: Objectlength: 1__proto__: Array[0]__proto__: Object
and and array with these objects for every row in the grid: 和对于网格中的每一行使用这些对象的数组:
0: o
_events: Object
_handlers: Object
amount: 40.45
customer: "customer 1"
date: "2015-11-25T00:00:00-08:00"
dirty: false
employee: 23
paid_with: "Check"
parent: ()
sale_location: "Main"
source: "POS"
uid: "70b2ba9c-15f7-4ac3-bea5-f1f2e3c800d3"
I have the latest version of kendo, I am loading jszip. 我有最新版本的kendo,我正在加载jszip。 I am running it on the latest version of chrome.
我在最新版本的chrome上运行它。 I have tried all kinds of variations of this code I can think of, including removing my schema, initializing the kendo anew every time in the callback.
我已经尝试了我能想到的这些代码的各种变体,包括删除我的模式,每次在回调中重新初始化kendo。
Anyone got any idea why this would not work? 任何人都知道为什么这不起作用?
Every example on this I can find make it look super simple, just create the grid and call export... So I have to have overlooked something. 我可以找到的每个例子都让它看起来非常简单,只需创建网格并调用导出...所以我必须忽略一些东西。
I am grateful for any ideas about this. 我很感激任何有关这方面的想法。
Thanks. 谢谢。
I have some following suggestion. 我有一些以下的建议。
It could be because the filename is missing. 可能是因为缺少文件名。
Here the part with the filename added: 这里添加了文件名的部分:
excel: {
allPages:true,
filterable:true,
fileName: "Kendo UI Grid Export.xlsx"
},
You can take a look here : Grid Excel Export 你可以看看这里: 网格Excel导出
And here for the pdf: Grid Pdf Export 这里是pdf: Grid Pdf Export
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.