JS 导出网页中Table内容到excel

Posted 一片黑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 导出网页中Table内容到excel相关的知识,希望对你有一定的参考价值。

  1. <html>  
  2. <head>  
  3. <script type="text/javascriptlanguage="javascript">  
  4.         var idTmr;  
  5.         function method1(tableid) {//整个表格拷贝到EXCEL中  
  6.             var curTbl = document.getElementById(tableid);  
  7.             var oXL = new ActiveXObject("Excel.Application");  
  8.             //创建AX对象excel   
  9.             var oWB = oXL.Workbooks.Add();  
  10.             //获取workbook对象   
  11.             var xlsheet = oWB.Worksheets(1);  
  12.             //激活当前sheet   
  13.             var sel = document.body.createTextRange();  
  14.             sel.moveToElementText(curTbl);  
  15.             //把表格中的内容移到TextRange中   
  16.             sel.select();  
  17.             //全选TextRange中内容   
  18.             sel.execCommand("Copy");  
  19.             //复制TextRange中内容    
  20.             xlsheet.Paste();  
  21.             //粘贴到活动的EXCEL中         
  22.             oXL.Visible = true;  
  23.             //设置excel可见属性  
  24.   
  25.             try {  
  26.                 var fname = oXL.Application.GetSaveAsFilename("将Table导出到Excel.xls", "Excel Spreadsheets (*.xls), *.xls");  
  27.             } catch (e) {  
  28.                 print("Nested catch caught " + e);  
  29.             } finally {  
  30.                 oWB.SaveAs(fname);  
  31.   
  32.                 oWB.Close(savechanges = false);  
  33.                 //xls.visible = false;  
  34.                 oXL.Quit();  
  35.                 oXL = null;  
  36.                 //结束excel进程,退出完成  
  37.                 //window.setInterval("Cleanup();",1);  
  38.                 idTmr = window.setInterval("Cleanup();", 1);  
  39.   
  40.             }  
  41.         }  
  42.         function Cleanup() {  
  43.             window.clearInterval(idTmr);  
  44.             CollectGarbage();  
  45.         }  
  46.     </script>  
  47.   
  48. </head>  
  49. <body>  
  50. <table id="ta">  
  51.   <tr>  
  52.     <td>1</td><td>admin</td>  
  53.     <td>23</td><td>程序员</td>  
  54.     <td>天津</td><td>[email protected]</td>  
  55.   </tr>  
  56.   <tr>  
  57.     <td>2</td><td>guest</td>  
  58.     <td>23</td><td>测试员</td>  
  59.     <td>北京</td><td>[email protected]</td>  
  60.   </tr>  
  61. </table>  
  62. <input id="Button1" type="button" value="导出EXCEL"   
  63.         onclick="javascript:method1(‘ta‘)" />  
  64. </body>  
  65. </html>  
  66. <html>
    <head>
    <script type="text/javascript" language="javascript">
            var idTmr;
            function method1(tableid) {//整个表格拷贝到EXCEL中
                var curTbl = document.getElementById(tableid);
                var oXL = new ActiveXObject("Excel.Application");
                //创建AX对象excel 
                var oWB = oXL.Workbooks.Add();
                //获取workbook对象 
                var xlsheet = oWB.Worksheets(1);
                //激活当前sheet 
                var sel = document.body.createTextRange();
                sel.moveToElementText(curTbl);
                //把表格中的内容移到TextRange中 
                sel.select();
                //全选TextRange中内容 
                sel.execCommand("Copy");
                //复制TextRange中内容  
                xlsheet.Paste();
                //粘贴到活动的EXCEL中       
                oXL.Visible = true;
                //设置excel可见属性
    
                try {
                    var fname = oXL.Application.GetSaveAsFilename("将Table导出到Excel.xls", "Excel Spreadsheets (*.xls), *.xls");
                } catch (e) {
                    print("Nested catch caught " + e);
                } finally {
                    oWB.SaveAs(fname);
    
                    oWB.Close(savechanges = false);
                    //xls.visible = false;
                    oXL.Quit();
                    oXL = null;
                    //结束excel进程,退出完成
                    //window.setInterval("Cleanup();",1);
                    idTmr = window.setInterval("Cleanup();", 1);
    
                }
            }
            function Cleanup() {
                window.clearInterval(idTmr);
                CollectGarbage();
            }
        </script>
    
    </head>
    <body>
    <table id="ta">
      <tr>
    	<td>1</td><td>admin</td>
    	<td>23</td><td>程序员</td>
    	<td>天津</td><td>[email protected]</td>
      </tr>
      <tr>
    	<td>2</td><td>guest</td>
    	<td>23</td><td>测试员</td>
    	<td>北京</td><td>[email protected]</td>
      </tr>
    </table>
    <input id="Button1" type="button" value="导出EXCEL" 
            onclick="javascript:method1(‘ta‘)" />
    </body>
    </html>

 

 

 

或者:

  1. <html>  
  2. <head>  
  3. <script type="text/javascript">  
  4. function dataToExcel(tableid) {//整个表格拷贝到EXCEL中  
  5. var curTbl = document.getElementById(tableid);   
  6. var oXL;   
  7. try {   
  8. oXL = GetObject("", "Excel.Application");   
  9. }   
  10. catch (E) {   
  11. try {   
  12. oXL = new ActiveXObject("Excel.Application");   
  13. }   
  14. catch (E2) {   
  15. //alert("Please confirm:\n1.Microsoft Excel has been installed.\n2.Internet   
  16.   
  17. Options=>Security=>Setting \"Enable unsafe ActiveX\"");   
  18. alert("请确认:\n1.机器上Excel已经安装.\n2.Internet 选项=>安全=>Internet \"对  
  19.   
  20. 未标记为安全的ActiveX控件进行初始化和脚本运行,设定为启用\"");  
  21. return;   
  22. }   
  23. }  
  24. //创建AX对象excel   
  25. var oWB = oXL.Workbooks.Add();   
  26. //获取workbook对象   
  27. var oSheet = oWB.ActiveSheet;   
  28. //激活当前sheet   
  29. var sel = document.body.createTextRange();   
  30. sel.moveToElementText(curTbl);   
  31. //把表格中的内容移到TextRange中   
  32. sel.select();   
  33. //全选TextRange中内容   
  34. sel.execCommand("Copy");   
  35. //复制TextRange中内容   
  36. oSheet.Paste();   
  37. //粘贴到活动的EXCEL中   
  38. oXL.Visible = true;   
  39. //设置excel可见属性   
  40. }  
  41.   
  42. </script>  
  43. </head>  
  44. <body>  
  45. <table id="ta">  
  46.   <tr>  
  47.     <td>1</td><td>admin</td>  
  48.     <td>23</td><td>程序员</td>  
  49.     <td>天津</td><td>[email protected]</td>  
  50.   </tr>  
  51.   <tr>  
  52.     <td>2</td><td>guest</td>  
  53.     <td>23</td><td>测试员</td>  
  54.     <td>北京</td><td>[email protected]</td>  
  55.   </tr>  
  56. </table>  
  57. <input id="Button1" type="button" value="导出EXCEL"   
  58.         onclick="javascript:dataToExcel(‘ta‘)" />  
  59. </body>  
  60. </html>  


    原文转自: http://blog.csdn.net/kalision/article/details/8350506




以上是关于JS 导出网页中Table内容到excel的主要内容,如果未能解决你的问题,请参考以下文章

使用JS导出页面内容到Excel

Jquery tableExport.js将网页中的表格导出为Excel

jq怎么把html中的table内的内容导出到excel?

js如何导出exel文件?

js操作table表格导出数据到excel方法

js导出excel