2016-12-26 18 views
2

次のコードを使用して、htmlテーブルからExcelファイルを生成します。小規模なデータセットに対してはうまくいきます。大きなhtmlテーブルデータセットには、ダウンロードエラーが表示されます。javascriptを使用して大規模なhtmlテーブルをエクスポートする

//creating a temporary HTML link element (they support setting file names) 
    var a = document.createElement('a'); 
    //getting data from our div that contains the HTML table 
    var data_type = 'data:application/vnd.ms-excel'; 
    var table_div = document.getElementById('dataTable'); 
    var table_html = table_div.outerHTML.replace(/ /g, '%20'); 
    a.href = data_type + ', ' + table_html; 
    //setting the file name 
    a.download = 'Sample.xls'; 
    //triggering the function 
    a.click(); 
    //just in case, prevent default behaviour 
    e.preventDefault(); 

答えて

1

は私がFileSaver.js 1を使用してこの問題を解決する一つの方法を発見しましたHTMLテーブルのデータセット。

0

多くのDOM要素があるため、大きなHTMLテーブルを解析するのが非常に遅くなる可能性があります。このような純粋なHTML5キャンバスベースのデータグリッド(https://github.com/openfin/fin-hypergrid)を使用することを検討してください。

また、CSVとして保存する方がxlsとして保存するよりも速くなる場合も検討してください。これは、大規模なと私のために正常に動作してJavascriptを

enter image description here

https://github.com/eligrey/FileSaver.js/以下

HTML enter image description here

を確認してください:

関連する問題