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 相关文章推荐
formValidator3.3的ajaxValidator一些异常分析
Jul 12 Javascript
jquery入门—访问DOM对象方法
Jan 07 Javascript
Javascript 读取操作Sql中的Xml字段
Oct 09 Javascript
原生javascript实现获取指定元素下所有后代元素的方法
Oct 28 Javascript
跟我学习javascript的Date对象
Nov 19 Javascript
javascript中类的定义方式详解(四种方式)
Dec 22 Javascript
jQuery Mobile中的button按钮组件基础使用教程
May 23 Javascript
Bootstrap Table的使用总结
Oct 08 Javascript
JQueryEasyUI框架下的combobox的取值和绑定的方法
Jan 22 Javascript
bootstrap multiselect下拉列表功能
Aug 22 Javascript
微信小程序模板(template)使用详解
Jan 31 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
Apr 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
PHP+MySQL 制作简单的留言本
2009/11/02 PHP
php无限分类且支持输出树状图的详细介绍
2013/06/19 PHP
兼容PHP和Java的des加密解密代码分享
2014/06/26 PHP
php读取目录及子目录下所有文件名的方法
2014/10/20 PHP
thinkphp3.2.2前后台公用类架构问题分析
2014/11/25 PHP
php生成图片验证码-附五种验证码
2015/08/19 PHP
thinkPHP实现MemCache分布式缓存功能
2016/03/23 PHP
php实现文件上传及头像预览功能
2017/01/15 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
IE与FireFox的兼容性问题分析
2007/04/22 Javascript
javascript基于jQuery的表格悬停变色/恢复,表格点击变色/恢复,点击行选Checkbox
2008/08/05 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
使用JavaScript为一张图片设置备选路径的方法
2017/01/04 Javascript
canvas实现流星雨的背景效果
2017/01/13 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
2017/02/24 Javascript
jQuery弹出窗口简单实现代码
2017/03/09 Javascript
vue axios用法教程详解
2017/07/23 Javascript
jquery 给动态生成的标签绑定事件的几种方法总结
2018/02/24 jQuery
vue-cli创建的项目,配置多页面的实现方法
2018/03/15 Javascript
以v-model与promise两种方式实现vue弹窗组件
2018/05/21 Javascript
React中使用Vditor自定义图片详解
2020/12/25 Javascript
[02:59]2014DOTA2西雅图国际邀请赛 圆满落幕中国夺冠
2014/07/23 DOTA
python网络爬虫采集联想词示例
2014/02/11 Python
深入剖析Python的爬虫框架Scrapy的结构与运作流程
2016/01/20 Python
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
2018/04/10 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
Django和Ueditor自定义存储上传文件的文件名
2021/02/25 Python
利用css3如何设置没有上下边的列表间隔线
2017/07/03 HTML / CSS
String、StringBuffer、StringBuilder有区别
2015/09/18 面试题
晚归检讨书
2014/02/19 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
志愿者服务活动总结报告
2015/05/06 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
python自动化测试通过日志3分钟定位bug
2021/11/20 Python
在CSS中使用when/else的方法
2022/01/18 HTML / CSS