Dojo DataGrid导出为ex​​cel

时间:2012-08-16 09:06:45

标签: dojo dojox.grid

我使用了datagrid的exporter插件并获得了CSV格式的网格数据。 但我想让这些数据以excel格式下载。一个解决方案是我可以向服务器发送ajax请求并发送回excel。

只是想知道是否可以通过这种方式创建和下载此excel而无需点击服务器。

我目前的导出代码是:

        function exportAll(){
            dijit.byId("grid").exportGrid("csv", function(str){
                alert('Data to be exported',str);
            });
        };

1 个答案:

答案 0 :(得分:1)

Exporting a dojo datagrid to a csv file

您无法通过javascript打开Excel,因此需要提供GET下载请求。

str发送到xhrPost的服务器,放入temp-file,打印temp-url,在xhrPost成功回调函数中,调用window.open("./" + responseText, "_new");。也可以使用io.iframe传输该帖子中的一个答案。

   function exportAll(){
        dijit.byId("grid").exportGrid("csv", function(str){
            dojo.xhrPost({
                url: '/putExportData.php',
                load: function(tempUrl) {
                    window.open(tempUrl, "_new");
                }
            });
        });
    };