2011-11-16 8 views
7

サーバー側とのやりとりなしにJSONデータをCSV/Excelにエクスポートすることはできますか? Javascriptのみを使用していますか?またはフラッシュ?私は現在、ZeroClipboardを使用して値をクリップボードにコピーしていますが、生成された値をブラウザ(FF、Chrome、IEなど)からExcelに直接開きたいとします。CSV/ExcelへのJavascriptまたはFlashのエクスポート

Thx。

+1

http://stackoverflow.com/questions/3665115/create-a-file-in-memory-for-user-to-download-notthrough-server –

答えて

8

テーブルからExcelへの最もクリーンで簡単なエクスポートは、Jquery DataTables Table Tools pluginです。あなたはクリップボードにCSV、あなたはエクセルPDFへのエクスポートを取得し、ソートし、グリッドを得るフィルタ、受注、およびページデータ、およびコードのちょうどいくつかの余分な線と2つの小さなファイルに含まれていますおよびプリンタ

$(document).ready(function() { 
    $('#example').dataTable({ 
     "sDom": 'T<"clear">lfrtip', 
     "oTableTools": { 
     "sSwfPath": "/swf/copy_cvs_xls_pdf.swf" 
     } 
    }); 
}); 

ので、展開が迅速に、非常に簡単に何のブラウザの制限、必要ありませんサーバー側の言語、およびすべてのほとんどが理解していないために:

これは必須ですすべてのコードです。それは勝利です。ただし、列の厳密な書式設定には限界があります。

+0

エクスポート時にオープンオプションを使用する方法はありますか?奇妙ですが、私はExcel文書のみを保存することができます – ic3

+0

DataTable機能を追加せずにそのTableToolsエクスポートの良さを得ることは可能ですか?私はすでに、並べ替えとフィルタリングと(データテーブルではなく、他の方法を使用して)より多くのものを持つHTMLテーブルを持って、今私は輸出機能が必要... –

+0

私はTableToolsを使用しようとしていますが、swfボタンを使用するのではなく、自分のボタンを使用したいと思います。出来ますか? – Firnas

2

クライアント側では、すべてのブラウザとファイルサイズでのみ行うのは間違いありません。すべてのソリューションは、次のいずれかを使用するように見える:

  • Flashプラグイン(例:Downloadify):バグではなく、モバイル互換
  • データURL:限られたIEのサポートとサイズ制限
  • HTML5:ダウンロード方法標準化されていませんブラウザ間で

あなたのユースケースによっては、上記のいずれかの方法で逃げることができます。 SOに関する詳細はこちら

Ramandeepシンからの回答のこの部分は間違っていることに注意してください:

ので、展開が迅速、ないブラウザの制限、無サーバ側言語 が必要ですが、そのほとんどは理解するのが非常に簡単です。

DataTablesは、コードを見るとフラッシュプラグインを使用します。モバイルブラウザ(iOS、最新のAndroid搭載端末、ハッキングやMSFT承認プロセスなしのWindows 8 RT)では動作しません。彼らのサイトからの投稿もあります:http://www.datatables.net/forums/discussion/7563/export-to-csvpdf-without-tabletools/p1

関連する問題