2017-02-23 1 views
4

JS, HTML 및 CSS를 사용하여 응용 프로그램을 빌드하고 서버에 호스팅합니다. 모든 HTML 테이블을 xls 형식의 Excel 파일로 가져 오기 위해 다음 코드를 사용하고 있습니다.Javascript (Excel로 html 테이블 내보내기)를 사용하여 xlsx 형식의 Excel 파일 다운로드

function fnExcelReport(tableNames) { 
    var tab_text = ""; 
    var arrTableNames = tableNames.split("|"); 
    if (arrTableNames.length > 0) { 
     for (var i = 0; i < arrTableNames.length; i++) { 

       tab_text = tab_text + "<table border='1px'>"; 

      tab = document.getElementById(arrTableNames[i]); 


      for (j = 0; j < tab.children.length; j++) { 
       tab_text = tab_text + tab.children[j].innerHTML; 
      } 
      tab_text = tab_text + "</table><br/><br/>"; 
      tab_text = tab_text.replace(/<A[^>]*>|<\/A>/g, ""); //remove if u want links in your table 
      tab_text = tab_text.replace(/<img[^>]*>/gi, ""); // remove if u want images in your table 
      tab_text = tab_text.replace(/<input[^>]*>|<\/input>/gi, ""); // reomves input params 
     } 
    } 
    var ua = window.navigator.userAgent; 
    var msie = ua.indexOf("MSIE "); 

    if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) // If Internet Explorer 
    { 
     if (window.navigator.msSaveBlob) { 
      var blob = new Blob([tab_text], { 
       type: "data:application/vnd.ms-excel;" 
      }); 
      sa = navigator.msSaveBlob(blob, "report.xls"); 
     } 
    } else //other browser not tested on IE 11 
     sa = window.open('data:application/vnd.ms-excel,' + encodeURIComponent(tab_text)); 

    return (sa); 
} 

나는 파일을 다운로드를 열 수 있어요,하지만 난 그것을 열 때 나는 다음과 같은 경고 메시지가 : 나는 예를 클릭하면

Warning message on Excel image

가, 내 모든 데이터가 올바르게 표시됩니다 Excel 파일에. 나는 그 경고 메시지를보고 싶지 않다. xlsx 형식으로 열리고 경고 메시지가 제거되도록 코드를 어떻게 변경합니까?

답변

1

콘텐츠 유형이 "xls"이 아니기 때문입니다. ie excel이 "xlsx"유형 인 경우이 오류가 발생합니다. 파일 이름으로 다른 Excel 확장 프로그램을 사용해보십시오.

관련 문제