2016-12-26 3 views
2

다음 코드를 사용하여 html 테이블에서 Excel 파일을 생성합니다. 작은 크기의 데이터 세트에서는 잘 작동합니다. 큰 html 테이블 데이터 세트는 다운로드 오류를 표시합니다.큰 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로 저장하는 것보다 빠르다고 생각하십시오. 이 큰 나를 위해 잘 작동 자바 스크립트

enter image description here

https://github.com/eligrey/FileSaver.js/ 다음

HTML enter image description here

을 확인하십시오 :