js将页面table数据保存为excel!(经测试可用)

来源:互联网 发布:java字符串转换10进制 编辑:程序博客网 时间:2024/06/08 23:19
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  <html xmlns="http://www.w3.org/1999/xhtml">  <head>      <meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>      <title>WEB页面导出为EXCEL文档的方法</title>  </head>  <body>  <table id="tableExcel" width="100%" border="1" cellspacing="0" cellpadding="0">     <tr>         <td colspan="2" align="center">WEB页面导出为EXCEL文档的方法</td>     </tr>     <tr>         <td>列标题1</td>         <td>列标题2</td>      </tr>     <tr>         <td>aaa</td>         <td>bbb</td>      </tr>     <tr>         <td>AAA</td>         <td>BBB</td>      </tr>     <tr>         <td>FFF</td>         <td>GGG</td>      </tr>   <tr>         <td colspan="2" align="center">    </td>     </tr>   <tr>         <td colspan="2" align="center">WEB页面导出为EXCEL文档的方法</td>     </tr>     <tr>         <td>列标题1</td>         <td>列标题2</td>      </tr>     <tr>         <td>aaa</td>         <td>bbb</td>      </tr>     <tr>         <td>AAA</td>         <td>BBB</td>      </tr>     <tr>         <td>FFF</td>         <td>GGG</td>      </tr>  </table> <input type="button" onclick="javascript:method1('tableExcel');" value="第一种方法导入到EXCEL"> <input type="button" onclick="javascript:method2('tableExcel');" value="第二种方法导入到EXCEL">  <SCRIPT LANGUAGE="javascript"> function method1(tableid) {//整个表格拷贝到EXCEL中     var curTbl = document.getElementById(tableid);     var oXL = new ActiveXObject("Excel.Application");     //创建AX对象excel     var oWB = oXL.Workbooks.Add();     //获取workbook对象         var oSheet = oWB.ActiveSheet;     //激活当前sheet     var sel = document.body.createTextRange();     sel.moveToElementText(curTbl);     //把表格中的内容移到TextRange中     sel.select();     //全选TextRange中内容     sel.execCommand("Copy");     //复制TextRange中内容      oSheet.Paste();     //粘贴到活动的EXCEL中           oXL.Visible = true;     //设置excel可见属性 } function method2(tableid) //读取表格中每个单元到EXCEL中 {     var curTbl = document.getElementById(tableid);     var oXL = new ActiveXObject("Excel.Application");     //创建AX对象excel     var oWB = oXL.Workbooks.Add();     //获取workbook对象     var oSheet = oWB.ActiveSheet;     //激活当前sheet     var Lenr = curTbl.rows.length;     //取得表格行数     for (i = 0; i < Lenr; i++)     {         var Lenc = curTbl.rows(i).cells.length;         //取得每行的列数         for (j = 0; j < Lenc; j++)        {            oSheet.Cells(i + 1, j + 1).value = curTbl.rows(i).cells(j).innerText;             //赋值         }     }     oXL.Visible = true;     //设置excel可见属性 }</SCRIPT></body></html>  
可能出现的问题:
错误信息为:“Automation服务器不能创建对象”
解决方法:
客户端机器执行如下操作:
点工具,进入Internet选项
选择“安全”标签,点“自定义级别”
找到“对没有标记为安全的ActiveX控件进行初始化和……”,
设定为启用