Dojo DataGrid导出为excel
问题描述:
我已经使用导出器插件datagrid并获取了CSV格式的网格数据。 但我想让这些数据可以以excel格式下载。一个解决方案是我可以发送一个ajax请求到服务器并发回excel。Dojo DataGrid导出为excel
只是想知道是否有一种方法,可以创建和下载这个excel而不会打到服务器。
我出口代码现在是:
function exportAll(){
dijit.byId("grid").exportGrid("csv", function(str){
alert('Data to be exported',str);
});
};
答
见
Exporting a dojo datagrid to a csv file
你不能打开通过javascript Excel,以便它需要一个GET下载请求。
发送str
到服务器xhrPost
,投入临时文件存在,打印临时-URL和xhrPost
成功回调函数,调用window.open("./" + responseText, "_new");
。它也可以使用传输在该帖子中显示的答案之一。
function exportAll(){
dijit.byId("grid").exportGrid("csv", function(str){
dojo.xhrPost({
url: '/putExportData.php',
load: function(tempUrl) {
window.open(tempUrl, "_new");
}
});
});
};
我认为这比JavaScript有更多的限制/安全性比Dojo有任何问题。 – Sandeep 2012-08-17 08:38:42
它是..你可以进入ActiveX组件,如果你想在IE中支持这个。它具有写入磁盘的灵活性 - 而JS拒绝这个功能(除了会话/ cookie存储ofc) – mschr 2012-08-17 08:59:27