使用javascript将剑道ui网格导出到Excel和CSV
请帮我解决我的问题,我在我的webapp中使用kendouigrid&试图将网格数据导出为EXcel和CSV格式。代码在Chrome中运行良好,文件正在下载,但在Fire Fox中,它会打开一个新窗口,在url中显示网格细节,并显示错误请求 //代码是使用javascript将剑道ui网格导出到Excel和CSV,javascript,excel,csv,kendo-ui,Javascript,Excel,Csv,Kendo Ui,请帮我解决我的问题,我在我的webapp中使用kendouigrid&试图将网格数据导出为EXcel和CSV格式。代码在Chrome中运行良好,文件正在下载,但在Fire Fox中,它会打开一个新窗口,在url中显示网格细节,并显示错误请求 //代码是 $("#exportcsv").click(function (e) { debugger var dataSource = $("#grid").data("kendoGrid").dataSourc
$("#exportcsv").click(function (e) {
debugger
var dataSource = $("#grid").data("kendoGrid").dataSource;
var filteredDataSource = new kendo.data.DataSource({
data: dataSource.data(),
filter: dataSource.filter()
});
filteredDataSource.read();
var data = filteredDataSource.view();
//start with the desired column headers here
var result = "\"ID\",\"EID\",\"Name\",\"Company Name\",\"Salary\",\"DID\",\"Date Of Join\"";
//each column will need to be called using the field name in the data source
for (var i = 0; i < data.length; i++) {
result += "\n";
result += "\"" + data[i].id + "\",";
result += "\"" + data[i].EID + "\",";
result += "\"" + data[i].EName + "\",";
result += "\"" + data[i].CName + "\",";
result += "\"" + data[i].Salary + "\",";
result += "\"" + data[i].DID + "\",";
result += "\"" + data[i].DOJ + "\",";
}
if (window.navigator.msSaveBlob) {
//Internet Explorer
window.navigator.msSaveBlob(new Blob([result]), 'ExportedKendoGrid.csv');
}
else if (window.webkitURL != null) {
//Google Chrome and Mozilla Firefox
var a = document.createElement('a');
result = encodeURIComponent(result);
a.href = 'data:application/csv;charset=UTF-8,' + result;
a.download = 'ExportedKendoGrid.csv';
a.click();
}
else {
//Everything Else
window.open(result);
}
e.preventDefault();
});
请确认一下,但您知道最新版本的KendoUI内置了excel(和pdf)导出功能吗?仅供参考,这在IEthanks@RobinGiltner中不适用于您的rply,我使用的是最新版本的剑道ui,因此我使用了第一个excel和pdf内置,但我没有得到,我对代理url感到困惑,如果您有示例,请让我帮助。当我尝试使用内置的剑道ui excel失败时,我更喜欢上面的代码,请帮助我并给出更好的解决方案谢谢
//Google Chrome and Mozilla Firefox
var a = document.createElement('a');
result = encodeURIComponent(result);
a.href = 'data:application/csv;charset=UTF-8,' + result;
a.download = 'ExportedKendoGrid.csv';
a.click();
}