2012-08-16 5 views
1

Я использовал экспортер плагин datagrid и получил данные сетки в формате CSV. Но я хочу, чтобы эти данные были загружаемыми в формате excel. Одним из решений является то, что я могу отправить запрос ajax на сервер и отправить обратно excel.Dojo DataGrid экспорт в excel

Просто хотел узнать, есть ли способ, с помощью которого это excel может быть создано и загружено без попадания на сервер.

Мой экспортный код как сейчас является:

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

ответ

1

См

Exporting a dojo datagrid to a csv file

Вы не можете открыть преуспеть с помощью JavaScript поэтому он должен быть запрос GET скачать.

str Отправьте на сервер с xhrPost, положить в темп-файл там, распечатать ТЕМП-адрес и в функции обратного вызова 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"); 
       } 
      }); 
     }); 
    }; 
+0

Я думаю, что это больше ограничений/безопасности JavaScript, чем у Dojo, имеющих какие-либо проблемы. – Sandeep

+0

это .. Вы можете попасть в компонент ActiveX, если хотите поддержать это в IE. Он имеет возможность записывать на диск, тогда как JS лишена этой функции (кроме хранилища session/cookie ofc) – mschr

Смежные вопросы