兼容ie8实现导出页面部分内容(tabel)为word

话说ie8是真的与众不同,之前被提实现一个需求,导出页面内容为word然后就运用了jquery.wordexport.js、写完才发现不兼容ie8、因为用到了Blob类型,谷歌用着好好地,到了ie就不行了,连ie10都疯狂报错,最后摸索了一下,IE生成文档是用ActiveX,和其他浏览器不一样,ActiveX会被系统internet拦截,所以需要手动设置。

百度的时候发现了好多小伙伴都在问这个问题,却没有什么合适的解决办法,所以在这里记录一下

下面放代码~

// An highlighted block
function exportToWord(controlId)  {
var control=document.getElementById(controlId)
    try {
        var oWD = new ActiveXObject("Word.Application");
        var oDC = oWD.Documents.Add("", 0, 1);
        var oRange = oDC.Range(0, 1);
          var sel = document.body.createTextRange();
         try {
         	
             sel.moveToElementText(control);
			location.replace(location)
// 					t.remove()
        } catch (notE) {
            alert("导出数据失败,没有数据可以导出。");
				location.replace(location)
               return;
          }
           sel.select();
          sel.execCommand("Copy");
           oRange.Paste();
         oWD.Application.Visible = true;
     }
      catch (e) {
         alert("导出数据失败,需要在客户机器安装Microsoft Office  Word(不限版本),将当前站点加入信任站点,在internet安全选项中允许在IE中运行ActiveX控件。");
         	location.replace(location)
        try { oWD.Quit(); } catch (ex) { }
     
     }
  }

	

html

// An highlighted block
<input  type="button" value="导出到WORD" onclick="return exportToWord('TestDiv')" />
	
	<div id="TestDiv">
		此处放需要转换成word的内容
	</div>

ps:这样导出word格式为web视图模式,目前参考网上代码却行不通,知道的大佬麻烦告知一声~ლ(❛◡❛✿)ლ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值