ie浏览器使用js导出网页到excel并打印


Posted in Javascript onMarch 11, 2014

在一些要求不是很高的小项目中,可以使用一些虽不是通用且不是新技术但是确实可以很好实现功能的技术来实现这些功能。这样系统不是显示的很复杂,且可以方便维护。 
新建一个exportPrint.html页面,里面的代码如下所示,就可以实现导出到Excel和打印网页。

<html>
 <head>
  <title>IE浏览器使用JS技术导出到Excel和打印</title>
  <style>
   .table_stat {
    border-right:0px;
    border-bottom:0px;
    border-left:1px solid #819BD8;
    border-top:1px solid #819BD8;
   }
   .td_stat {
    border-right:1px solid #819BD8;
    border-bottom:1px solid #819BD8;
   }
  </style>
 </head>
 <body>
  <object classid="CLSID:8856F961-340A-11DO-A96B-00C04FD705A2" height="0" id="WebBrowser" width="0"></object>
  <table width="100%" align="center" border="0" cellpadding="0" cellspacing="0" style="text-align: center;" class="table_stat">
   <tr>
    <td id="title" align="center" nowrap="nowrap" class="td_stat" colspan="2">
     用户信息
    </td>
   </tr>
   <tr>
    <td id="title" align="center" nowrap="nowrap" class="td_stat" colspan="1">
     姓名
    </td>
    <td id="title" align="center" nowrap="nowrap" class="td_stat" colspan="1">
     张三
    </td>
   </tr>   <tr>
    <td id="title" align="center" nowrap="nowrap" class="td_stat" colspan="2">
     <input type="button" id="export" value="导出" onclick="javascript:exportToExcel();" >
     <input type="button" id="print" value="打印" onclick="javascript:print();" >
    </td>
   </tr>
  </table>
 </body>
</html>

<script type="text/javaScript">
 //导出到Excel
 function exportToExcel() {
  if(document.getElementById("title")) {
   try {
    var oRangeRef = document.body.createTextRange();
    oRangeRef.execCommand("Copy");
    var appExcel = new ActiveXObject("Excel.Application");
    appExcel.visible = true;
    appExcel.Workbooks.Add().WorkSheets.Item(1).Paste();
   } catch(e) {
    alert("出错啦!可能是浏览器或者是数据量太大咯哦!");
    return;
   }
   appExcel = null;
   oRangeRef = null;
  }
 }
 //打印
 function print() {
  if(document.getElementById("title")) {
   var export = document.getElementById("export");
   var print = document.getElementById("print");
   try {
    export.style.display = "none";
    print.style.display = "none";
    document.all.WebBrowser.ExecWB(6,1);
   } catch(e) {
    alert("出错啦!可能是浏览器或者是数据量太大咯哦!");
    return;
   }
   export.style.display = "";
   print.style.display = "";
  }
 }
</script>
Javascript 相关文章推荐
简单几行JS Code实现IE邮件转发新浪微博
Jul 03 Javascript
浅析JavaScript中作用域和作用域链
Dec 06 Javascript
javaScript实现滚动条事件详解
Mar 24 Javascript
vue综合组件间的通信详解
Nov 06 Javascript
浅谈在Vue-cli里基于axios封装复用请求
Nov 06 Javascript
ajax前台后台跨域请求处理方式
Feb 08 Javascript
vue页面加载闪烁问题的解决方法
Mar 28 Javascript
AngularJS模态框模板ngDialog的使用详解
May 11 Javascript
详解Vue.js使用Swiper.js在iOS
Sep 10 Javascript
Vue 3.x+axios跨域方案的踩坑指南
Jul 04 Javascript
基于jQuery实现可编辑的表格
Dec 11 jQuery
如何通过JS实现转码与解码
Feb 21 Javascript
使用JS或jQuery模拟鼠标点击a标签事件代码
Mar 10 #Javascript
JS对文本框值的判断示例
Mar 10 #Javascript
防止按钮在短时间内被多次点击的方法
Mar 10 #Javascript
JS操作CSS随机改变网页背景实现思路
Mar 10 #Javascript
jquery插件开发之实现jquery手风琴功能分享
Mar 10 #Javascript
文本域光标操作的jQuery扩展分享
Mar 10 #Javascript
jquery插件开发之实现google+圈子选择功能
Mar 10 #Javascript
You might like
解决File size limit exceeded 错误的方法
2013/06/14 PHP
PHP registerXPathNamespace()函数讲解
2019/02/03 PHP
解决tp5在nginx下修改配置访问的问题
2019/10/16 PHP
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
2009/06/02 Javascript
使用JQuery进行跨域请求
2010/01/25 Javascript
Javascript 中的 &amp;&amp; 和 || 使用小结
2010/04/25 Javascript
JS删除数组元素的函数介绍
2013/03/27 Javascript
ExtJS的拖拽效果示例
2013/12/09 Javascript
jquery获取元素索引值index()示例
2014/02/13 Javascript
jQuery队列操作方法实例
2014/06/11 Javascript
jQuery事件对象总结
2016/10/17 Javascript
基于javascript实现最简单选项卡切换
2017/02/01 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
vue移动端屏幕适配详解
2019/04/30 Javascript
JS数组扁平化(flat)方法总结详解
2019/06/24 Javascript
layui禁用侧边导航栏点击事件的解决方法
2019/09/25 Javascript
javascript严格模式详解(含严格模式与非严格模式的区别)
2019/11/12 Javascript
angular组件间传值测试的方法详解
2020/05/07 Javascript
vue实现图片上传到后台
2020/06/29 Javascript
Vue Render函数创建DOM节点代码实例
2020/07/08 Javascript
[46:23]完美世界DOTA2联赛PWL S2 FTD vs Magma 第一场 11.20
2020/11/23 DOTA
在Python中处理XML的教程
2015/04/29 Python
python3 图片referer防盗链的实现方法
2018/03/12 Python
python 从csv读数据到mysql的实例
2018/06/21 Python
使用sklearn之LabelEncoder将Label标准化的方法
2018/07/11 Python
pandas的相关系数与协方差实例
2019/12/27 Python
Python开发之pip安装及使用方法详解
2020/02/21 Python
Python用K-means聚类算法进行客户分群的实现
2020/08/23 Python
通俗讲解python 装饰器
2020/09/07 Python
销售文员的岗位职责
2013/11/20 职场文书
传媒专业推荐信范文
2013/11/23 职场文书
财务学生的职业生涯发展
2014/02/11 职场文书
股份转让协议书
2014/04/12 职场文书
上班迟到检讨书范文300字
2014/11/02 职场文书
2016教师校本研修心得体会
2016/01/08 职场文书
CSS3新特性详解(五):多列columns column-count和flex布局
2021/04/30 HTML / CSS