EasyUI 结合JS导出Excel文件的实现方法


Posted in Javascript onNovember 10, 2016

废话俺就少说了,直接进入正题!!单纯的JS能够导出Excel的不多见,一般都需要调用客户端所安装的Office Excel组件来完成这个工作。这里我主要讲EasyUI内的DataGrid如何结合JS导出Excel文件

一、 导出Excel的核心代码段如下所示

function Exproter() {
      //获取Datagride的列
      var rows = $('#test').datagrid('getRows');
      var oXL = new ActiveXObject("Excel.Application"); //创建AX对象excel 
      var oWB = oXL.Workbooks.Add(); //获取workbook对象 
      var oSheet = oWB.ActiveSheet; //激活当前sheet
      for (var i = 0; i < rows.length; i++) {
        oSheet.Cells(i + 1, 1).value = rows[i].O_NAME;
      }
      oXL.Visible = true; //设置excel可见属性
}

二、以上JS方法能够顺利执行的大前提就是

1.机器上Excel已经安装.

2.Internet 选项=>安全=>Internet

\"对没有标记为安全的ActiveX控件进行初始化和脚本运行,设定为启用\"

//EasyUI datagrid 动态导出Excel
function ExporterExcel() {
      //获取Datagride的列
      var rows = $('#tt').datagrid('getRows');
      var columns = $("#tt").datagrid("options").columns[0];
      var oXL = new ActiveXObject("Excel.Application"); //创建AX对象excel 
      var oWB = oXL.Workbooks.Add(); //获取workbook对象 
      var oSheet = oWB.ActiveSheet; //激活当前sheet
      //设置工作薄名称
      oSheet.name = "导出Excel报表";
      //设置表头
      for (var i = 0; i < columns.length; i++) {
        oSheet.Cells(1, i+1).value = columns[i].title;
      }
      //设置内容部分
      for (var i = 0; i < rows.length; i++) {
        //动态获取每一行每一列的数据值
        for (var j = 0; j < columns.length; j++) {        
          oSheet.Cells(i + 2, j+1).value = rows[i][columns[j].field];
        }  
      }       
      oXL.Visible = true; //设置excel可见属性
}

以上就是小编为大家带来的EasyUI 结合JS导出Excel文件的实现方法全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
HTA版JSMin(省略修饰语若干)基于javascript语言编写
Dec 24 Javascript
Jquery知识点一 Jquery的ready和Dom的onload的区别
Jan 15 Javascript
jQuery实现切换字体大小的方法
Mar 10 Javascript
js实现页面刷新滚动条位置不变
Nov 27 Javascript
JS高级运动实例分析
Dec 20 Javascript
JS字符串长度判断,超出进行自动截取的实例(支持中文)
Mar 06 Javascript
JavaScript瀑布流布局实现代码
May 06 Javascript
JS面向对象的程序设计相关知识小结
May 26 Javascript
Next.js项目实战踩坑指南(笔记)
Nov 29 Javascript
JavaScript面试中常考的字符串操作方法大全(包含ES6)
May 10 Javascript
vue-路由精讲 二级路由和三级路由的作用
Aug 06 Javascript
在elementui中Notification组件添加点击事件实例
Nov 11 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
Nov 10 #Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
Nov 10 #Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
Nov 10 #Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
Nov 10 #Javascript
微信小程序 删除项目工程实现步骤
Nov 10 #Javascript
实现easyui的datagrid导出为excel的示例代码
Nov 10 #Javascript
easyui导出excel无法弹出下载框的快速解决方法
Nov 10 #Javascript
You might like
当年上海收录机产品生产,进口和价格情况
2021/03/04 无线电
Codeigniter的一些优秀特性总结
2015/01/21 PHP
Zend Framework动作助手Url用法详解
2016/03/05 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
Laravel框架使用Seeder实现自动填充数据功能
2018/06/13 PHP
jquery tools 系列 scrollable学习
2009/09/06 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
js获取dom的高度和宽度(可见区域及部分等等)
2013/06/13 Javascript
jquery select多选框的左右移动 具体实现代码
2013/07/03 Javascript
判断输入是否为空,获得输入类型的JS代码
2013/10/30 Javascript
JS HTML5拖拽上传图片预览
2016/07/18 Javascript
详解基于webpack搭建react运行环境
2017/06/01 Javascript
AngularJS实现页面跳转后自动弹出对话框实例代码
2017/08/02 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
vue动态设置img的src路径实例
2018/09/18 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
vue 如何使用递归组件
2020/10/23 Javascript
Python正则表达式教程之一:基础篇
2017/03/02 Python
Python实现的密码强度检测器示例
2017/08/23 Python
利用ctypes获取numpy数组的指针方法
2019/02/12 Python
Python装饰器限制函数运行时间超时则退出执行
2019/04/09 Python
Python这样操作能存储100多万行的xlsx文件
2019/04/16 Python
python障碍式期权定价公式
2019/07/19 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
Python使用socket_TCP实现小文件下载功能
2020/10/09 Python
CSS3 rgb and rgba(透明色)的使用详解
2020/09/25 HTML / CSS
基于html5实现的图片墙效果
2014/10/16 HTML / CSS
支票、地址标签、包装纸和慰问卡:Current Catalog
2018/01/30 全球购物
宝拉珍选英国官网:Paula’s Choice英国
2019/05/29 全球购物
党的群众路线教育实践活动学习计划
2014/11/03 职场文书
搞笑婚前保证书
2015/02/28 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书
浅谈vue2的$refs在vue3组合式API中的替代方法
2021/04/18 Vue.js
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL
使用 Apache Dubbo 实现远程通信(微服务架构)
2022/02/12 Servers
java中为什么说子类的构造方法默认访问的是父类的无参构造方法
2022/04/13 Java/Android