- 浏览: 384386 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
zenmshuo:
这个也是调用Excel IO实现的吗?之前都是通过Spread ...
JS 导入导出 EXcel -
todayANDtommorow:
太喜欢了,谢谢
HSSFWorkBooK用法 -
qinjian379:
挺实用的。
HSSFWorkBooK用法 -
s_8808:
var isMobile=/^(?:13\d|15\d)\d{ ...
正则表达式判断电话号码 -
liuweihug:
jquery调用函数时传递对象参数 http://www.s ...
Jquery 迭代对象
1:先看页面中的处理
<input type="button" name="Submit" id="ww" class="button_sc" value="导 出" onclick="saveAsExcel('datas')" disabled/>
2:页头中的处理
<script language='javascript' src='js/exportExcel.js'></script>
3: body部分
<table id="datas" width="98%" border="0" cellpadding="0" cellspacing="1" bgcolor="#A7CCE7"> ......<!-- 代码部分--> </table>
4:JS文件部分exportExcel.js
/* * 默认转换实现函数,如果需要其他功能,需自行扩展 * 参数: * tableID : HTML中Table对象id属性值 * 详细用法参见以下 TableToExcel 对象定义 */ function saveAsExcel(tableID){ var tb = new TableToExcel(tableID); tb.setFontStyle("Courier New"); tb.setFontSize(10); tb.setTableBorder(2); tb.setColumnWidth(7); tb.isLineWrap(true); tb.getExcelFile(); } /* * 功能:HTML中Table对象转换为Excel通用对象. * 参数:tableID HTML中Table对象的ID属性值 * 说明: * 能适应复杂的HTML中Table对象的自动转换,能够自动根据行列扩展信息 * 合并Excel中的单元格,客户端需要安装有Excel * 详细的属性、方法引用说明参见:Excel的Microsoft Excel Visual Basic参考 * 示范: * var tb = new TableToExcel('demoTable'); * tb.setFontStyle("Courier New"); * tb.setFontSize(10); //推荐取值10 * tb.setFontColor(6); //一般情况不用设置 * tb.setBackGround(4); //一般情况不用设置 * tb.setTableBorder(2); //推荐取值2 * tb.setColumnWidth(10); //推荐取值10 * tb.isLineWrap(false); * tb.isAutoFit(true); * * tb.getExcelFile(); * 如果设置了单元格自适应,则设置单元格宽度无效 * 版本:1.0 * BUG提交:QQ:18234348 或者 http://jeva.bokee.com */ function TableToExcel(tableID) { this.tableBorder = -1; //边框类型,-1没有边框 可取1/2/3/4 this.backGround = 0; //背景颜色:白色 可取调色板中的颜色编号 1/2/3/4.... this.fontColor = 1; //字体颜色:黑色 this.fontSize = 10; //字体大小 this.fontStyle = "宋体"; //字体类型 this.rowHeight = -1; //行高 this.columnWidth = -1; //列宽 this.lineWrap = true; //是否自动换行 this.textAlign = -4108; //内容对齐方式 默认为居中 this.autoFit = false; //是否自适应宽度 this.tableID = tableID; } TableToExcel.prototype.setTableBorder = function (excelBorder) { this.tableBorder = excelBorder ; }; TableToExcel.prototype.setBackGround = function (excelColor) { this.backGround = excelColor; }; TableToExcel.prototype.setFontColor = function (excelColor) { this.fontColor = excelColor; }; TableToExcel.prototype.setFontSize = function (excelFontSize) { this.fontSize = excelFontSize; }; TableToExcel.prototype.setFontStyle = function (excelFont) { this.fontStyle = excelFont; }; TableToExcel.prototype.setRowHeight = function (excelRowHeight) { this.rowHeight = excelRowHeight; }; TableToExcel.prototype.setColumnWidth = function (excelColumnWidth) { this.columnWidth = excelColumnWidth; }; TableToExcel.prototype.isLineWrap = function (lineWrap) { if (lineWrap == false || lineWrap == true) { this.lineWrap = lineWrap; } }; TableToExcel.prototype.setTextAlign = function (textAlign) { this.textAlign = textAlign; }; TableToExcel.prototype.isAutoFit = function(autoFit){ if(autoFit == true || autoFit == false) this.autoFit = autoFit ; } //文件转换主函数 TableToExcel.prototype.getExcelFile = function () { var jXls, myWorkbook, myWorksheet, myHTMLTableCell, myExcelCell, myExcelCell2; var myCellColSpan, myCellRowSpan; try { jXls = new ActiveXObject('Excel.Application'); } catch (e) { alert("无法启动Excel!\n\n" + e.message + "\n\n如果您确信您的电脑中已经安装了Excel,"+ "那么请调整IE的安全级别。\n\n具体操作:\n\n"+ "工具 → Internet选项 → 安全 → 自定义级别 → 对没有标记为安全的ActiveX进行初始化和脚本运行 → 启用"); return false; } jXls.Visible = true; myWorkbook = jXls.Workbooks.Add(); jXls.DisplayAlerts = false; myWorkbook.Worksheets(3).Delete(); myWorkbook.Worksheets(2).Delete(); jXls.DisplayAlerts = true; myWorksheet = myWorkbook.ActiveSheet; var readRow = 0, readCol = 0; var totalRow = 0, totalCol = 0; var tabNum = 0; //设置行高、列宽 if(this.columnWidth != -1) myWorksheet.Columns.ColumnWidth = this.columnWidth; else myWorksheet.Columns.ColumnWidth = 7; if(this.rowHeight != -1) myWorksheet.Rows.RowHeight = this.rowHeight ; //搜索需要转换的Table对象,获取对应行、列数 var obj = document.all.tags("table"); for (x = 0; x < obj.length; x++) { if (obj[x].id == this.tableID) { tabNum = x; totalRow = obj[x].rows.length; for (i = 0; i < obj[x].rows[0].cells.length; i++) { myHTMLTableCell = obj[x].rows(0).cells(i); myCellColSpan = myHTMLTableCell.colSpan; totalCol = totalCol + myCellColSpan; } } } //开始构件模拟表格 var excelTable = new Array(); for (i = 0; i <= totalRow; i++) { excelTable[i] = new Array(); for (t = 0; t <= totalCol; t++) { excelTable[i][t] = false; } } //开始转换表格 for (z = 0; z < obj[tabNum].rows.length; z++) { readRow = z + 1; readCol = 0; for (c = 0; c < obj[tabNum].rows(z).cells.length; c++) { myHTMLTableCell = obj[tabNum].rows(z).cells(c); myCellColSpan = myHTMLTableCell.colSpan; myCellRowSpan = myHTMLTableCell.rowSpan; for (y = 1; y <= totalCol; y++) { if (excelTable[readRow][y] == false) { readCol = y; break; } } if (myCellColSpan * myCellRowSpan > 1) { myExcelCell = myWorksheet.Cells(readRow, readCol); myExcelCell2 = myWorksheet.Cells(readRow + myCellRowSpan - 1, readCol + myCellColSpan - 1); myWorksheet.Range(myExcelCell, myExcelCell2).Merge(); myExcelCell.HorizontalAlignment = this.textAlign; myExcelCell.Font.Size = this.fontSize; myExcelCell.Font.Name = this.fontStyle; myExcelCell.wrapText = this.lineWrap; myExcelCell.Interior.ColorIndex = this.backGround; myExcelCell.Font.ColorIndex = this.fontColor; if(this.tableBorder != -1){ myWorksheet.Range(myExcelCell, myExcelCell2).Borders(1).Weight = this.tableBorder ; myWorksheet.Range(myExcelCell, myExcelCell2).Borders(2).Weight = this.tableBorder ; myWorksheet.Range(myExcelCell, myExcelCell2).Borders(3).Weight = this.tableBorder ; myWorksheet.Range(myExcelCell, myExcelCell2).Borders(4).Weight = this.tableBorder ; } myExcelCell.Value = myHTMLTableCell.innerText; for (row = readRow; row <= myCellRowSpan + readRow - 1; row++) { for (col = readCol; col <= myCellColSpan + readCol - 1; col++) { excelTable[row][col] = true; } } readCol = readCol + myCellColSpan; } else { myExcelCell = myWorksheet.Cells(readRow, readCol); myExcelCell.Value = myHTMLTableCell.innerText; myExcelCell.HorizontalAlignment = this.textAlign; myExcelCell.Font.Size = this.fontSize; myExcelCell.Font.Name = this.fontStyle; myExcelCell.wrapText = this.lineWrap; myExcelCell.Interior.ColorIndex = this.backGround; myExcelCell.Font.ColorIndex = this.fontColor; if(this.tableBorder != -1){ myExcelCell.Borders(1).Weight = this.tableBorder ; myExcelCell.Borders(2).Weight = this.tableBorder ; myExcelCell.Borders(3).Weight = this.tableBorder ; myExcelCell.Borders(4).Weight = this.tableBorder ; } excelTable[readRow][readCol] = true; readCol = readCol + 1; } } } if(this.autoFit == true) myWorksheet.Columns.AutoFit; jXls.UserControl = true; jXls = null; myWorkbook = null; myWorksheet = null; };
发表评论
-
JS 判断属性未定义
2010-12-14 10:21 1604很简单的一个方法 if (typeof(x) == &quo ... -
JS 判断窗口是否关闭
2010-12-01 17:11 12702关键字: window.close事件 ... -
老生常谈: JS实现随机验证码.很实用
2010-11-19 15:48 8464输入验证码...主要是防止被人过多的注入注册 1: 主 ... -
JS 给<select> 标签加值,清空.自选
2010-11-17 11:17 47151:获取select对象 var addelem ... -
window 窗口对象 - Javascript语言描述
2010-11-09 08:56 1138window 窗口对象 - Javascript语言描述 ... -
setTimeout 和 setInterval 的区别
2010-11-08 17:40 1077setTimeout (表达式,延时时间) se ... -
JS 判断手机号码和座机
2010-10-30 23:29 106691:就不啰嗦了,直接上代码。 //判断座机格式的 v ... -
JS 中的条件判断
2010-10-30 23:22 17329JavaScript 是一种可以在 ... -
JS 除掉空格
2010-10-30 22:49 1161方法一: 最好的方法采用的是正则表达式,这是最核心的原 ... -
window.open
2010-09-12 01:00 1512window.open参数完全手册 ... -
JS prototype 增加属性
2010-06-24 11:41 1281直接上代码 <script type=" ... -
document.execCommand()用法说明
2010-06-24 11:01 2275document.execCommand()方法可用来执行很多 ... -
js出掉空格(空格提交)
2010-06-12 13:54 964if(document.getElementById(&qu ... -
在页面中通过控件加入HTML元素
2010-06-08 15:46 9731:这是JS代码 functi ... -
JS 小常识
2010-05-12 10:01 1027本篇不定期更新,本着多积累的原则,呵呵! 1 ... -
js 正则 过滤尖括号
2010-03-30 11:07 2414<script > Function nohtm ... -
JS+CSS 导航条显示数据库数据
2010-03-22 14:41 2714js部分 <script> function ... -
DIV+CSS浮动广告
2010-03-22 10:08 55601:首先讲一下如何取得坐标的一些小问题 要获取当前页面的滚动条 ... -
正则表达式判断电话号码
2010-03-17 16:09 5769这里主要的还是要看正则表达式 <script typ ... -
重复提交解决的几种方法
2010-03-17 16:05 9751:当然首选 token 但是当要做去效果的时候。可以用JS来 ...
相关推荐
超好用的js操作Excel实现数据导入导出JS包。只需引入JS包即可完成功能开发。压缩包中有Demo,参照编写即可。
点击index.html,导入文件,可以选择文件中“待导入的数据.xlsx”文件导入数据,也可以选择用户自己定义的文件,点击导出文件,即可导出文件
xlsx.full.min.js-导入导出获取数据excel-----demo
项目范围:纯前端; 项目内容:luckysheet在线编辑Excel导出,Excel文件导入; 项目运行:直接浏览器运行index.html
vue导入导出excel文件所需要用到的依赖文件,从网上转载而来,并非原创。大家需要可以从别处下载,这里下载需要积分,本人上传只是为了方便保存以供以后所用。
主要是对js导入导出excel的实例代码进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
页面导出数据到Excel或将Excel数据导入到js进数据库
JS导出导入Excel文件插件, 简单好用,含有Demo,运行就懂!
Javascript 解析、导入、导出 Excel 文件小示例。包括了 web(仅支持现代浏览器) 和 nodejs(需要 v7.6 )。
layui数据表格导出Excel插件 博客地址: https://www.cnblogs.com/YunRuiSoftWare/p/13346396.html
js导出excel 的例子, 可以把网页的表格直接导出成excel
具体详细实施内容请见博客
excel 导入导出 //设置为文本类型 xlWorkSheet.columns.ColumnWidth=20; //设置列宽
## excel导入导出工具 在需要使用的地方导入方法: ```javascript import { importExcel, exportExcel } from '@/util/excel' ``` 导入excel并转化为JSON: ```javascript // file: excel文件 // keys: 数组 excel每个...
2、最重要的是可以学会导入导出合并单元格的思想,本实例代码可能会对您的需求有出入,但重要的是思想; 3、学会如何使用Newtonsoft.Json.dll动态链接库,会使用JsonConvert.*生成和解析数据; 4、学会简单的使用...
Vue3实现表格导入、导出功能。 主前端实现,导出功能可导出图片
简单的vue前端excel导入导出组件,结合element-ui.包含导出字段选择,导入字段校验。由于源码和项目结合使用,部分字典,校验工具类需要和自己项目做适配。 项目需要引入:script-loader,xlsx,file-saver,不懂可...
echarts图表导出到excel中的解决方法,做个备忘录,以防忘记
JavaScript直接导出或导入Excel,Word
js导入excel表格或者导出为excel格式,用到的js文件xlsx.full.min.js资源