导出页面文档(只在IE8下测试过)

  之前说过一篇关于打印的方法,就顺便也看了一下导出,但是该方法需要用户更改浏览器的安全级别设置,因此并不十分推荐,大家如真有需要可以参考一下ZeroClipboard这款插件,我有时间也会去学习一下并贴出详细内容

  先说一下这种方式

1.首先需要找出你要导出的页面内容:

var obj = document.getElementById("export");

2.之后需要创建剪贴板对象,并将改内容复制到剪贴板,注意,该写法只支持部分IE,如需其他浏览器中使用,需要对兼容性进行处理。(比如报出如下错误:

Uncaught TypeError: Cannot call method 'setData' of undefined;或输出window.clipboardData为undefined等)
window.clipboardData.setData("Text",obj.innerHTML);

这里使用的setData这个方法将obj下的内容写入到剪贴板中,除了该方法,其还有 getData(读取剪贴板中的内容)和cleanData(清楚剪贴板)

3.创建excel对象

var oXL = new ActiveXObject("Excel.Application");

4.最后将该内容复制到excel中就完成啦:

oXL.Application.Visible=true;
var oWB = oXL.Workbooks.Add(); 创建工作簿
var oSheet = oWB.Worksheets(1);选择要复制的对象
    try{
        oSheet.Paste(); 复制对象到剪贴板
     }catch(e){
         alert(“导出失败”);

var oXL = new ActiveXObject("Excel.Application");

原文地址:https://www.cnblogs.com/weblv/p/5145265.html