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 相关文章推荐
Javascript 面向对象 继承
May 13 Javascript
JS.elementGetStyle(element, style)应用示例
Sep 24 Javascript
js实现仿阿里巴巴城市选择框效果实例
Jun 24 Javascript
js多个物体运动功能实例分析
Dec 20 Javascript
jquery实现简单实用的轮播器
May 23 jQuery
原生JS实现图片懒加载(lazyload)实例
Jun 13 Javascript
JS实现的文字间歇循环滚动效果完整示例
Feb 13 Javascript
浅谈webpack4.x 入门(一篇足矣)
Sep 05 Javascript
如何在基于vue-cli的项目自定义打包环境
Nov 10 Javascript
微信小程序-API接口安全详解
Jul 16 Javascript
Vue中多元素过渡特效的解决方案
Feb 05 Javascript
Vue中的nextTick作用和几个简单的使用场景
Jan 25 Vue.js
浅谈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
用PHP连mysql和oracle数据库性能比较
2006/10/09 PHP
让codeigniter与swfupload整合的最佳解决方案
2014/06/12 PHP
PHP图片自动裁切应付不同尺寸的显示
2014/10/16 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
深入Javascript函数、递归与闭包(执行环境、变量对象与作用域链)使用详解
2013/05/08 Javascript
JavaScript 中的日期和时间及表示标准介绍
2013/08/21 Javascript
js带按钮的提示框可供选择示例代码
2013/09/17 Javascript
jquery next nextAll nextUntil siblings的区别介绍
2013/10/05 Javascript
javascript获取本机操作系统类型的方法
2015/08/13 Javascript
精通JavaScript的this关键字
2020/05/28 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
Angular2 http jsonp的实例详解
2017/08/31 Javascript
vue 录制视频并压缩视频文件的方法
2018/07/27 Javascript
浅析java线程中断的办法
2018/07/29 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
[06:24]DOTA2 2015国际邀请赛中国区预选赛第二日TOP10
2015/05/27 DOTA
使用python开发vim插件及心得分享
2014/11/04 Python
numpy中实现二维数组按照某列、某行排序的方法
2018/04/04 Python
在Python中Dataframe通过print输出多行时显示省略号的实例
2018/12/22 Python
python过滤中英文标点符号的实例代码
2019/07/15 Python
python实现图片压缩代码实例
2019/08/12 Python
python3.6编写的单元测试示例
2019/08/17 Python
检测tensorflow是否使用gpu进行计算的方式
2020/02/03 Python
bareMinerals官网:矿物质化妆品和护肤品
2018/02/04 全球购物
Troy-Bilt官网:草坪割草机、吹雪机、分蘖机等
2019/02/19 全球购物
体育教育专业自荐信范文
2013/12/20 职场文书
项目管理计划书
2014/01/09 职场文书
2015年员工试用期工作总结
2014/12/12 职场文书
2015年挂职干部工作总结
2015/05/14 职场文书
早上好问候语大全
2015/11/10 职场文书
2016年大学生暑假爱心支教活动策划书
2015/11/26 职场文书
Python基础之进程详解
2021/05/21 Python
JavaScript分页组件使用方法详解
2021/07/26 Javascript
通过T-SQL语句创建游标与实现数据库加解密功能
2022/03/16 SQL Server
PostgreSQL之连接失败的问题及解决
2023/05/08 PostgreSQL