JS 导出Web Table到Excel Demo(最简单)
2013-04-02 11:19
441 查看
1. 创建一个web项目
2. 创建一个JSP页面
3. 把下面的代码放入页面
4. 把IE的安全选项的前三个区域(Internet,本地Intranet,受信任的站点)中的ActiveX的应用全部启用。
5. 运行你创建的项目就可以测试了。
ps:据说这种用法对于大型项目来说不太好,存在线程安全问题。
但是如果是做简单的导出,要求不高的话,可以借鉴。
2. 创建一个JSP页面
3. 把下面的代码放入页面
4. 把IE的安全选项的前三个区域(Internet,本地Intranet,受信任的站点)中的ActiveX的应用全部启用。
5. 运行你创建的项目就可以测试了。
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Insert title here</title> <SCRIPT LANGUAGE="javascript"> function ExcelExport(tableid) { // alert(tableid); var table = document.getElementById(tableid); //获取页面的table var excel = new ActiveXObject("Excel.Application"); //实例化Excel.Application对象 // alert(tableid); var workB = excel.Workbooks.Add(); ////添加新的工作簿 var sheet = workB.ActiveSheet; //var sheet= workB.Worksheets(1);//该句代码和上句代码同意,都是激活一个sheet /***************常用样式设置语句***************************************/ //sheet.Rows(1).WrapText = false; //自动换行设置 //sheet.Rows(1).Font.Size=18;//设置第一行的字体大小 //sheet.Rows(1).Interior.ColorIndex=2;//设置第一行背景色 //sheet.Rows(1).Font.ColorIndex=1;//设置第一行字体色 //sheet.Range(sheet.Cells(1,1),sheet.Cells(1,7)).mergecells=true;//第一行1到7单元格合并 sheet.Columns("A").ColumnWidth = 35;//设置列宽 sheet.Columns("B").ColumnWidth = 35; //sheet.Columns("A:B").ColumnWidth =35;//另一种设置列宽的方式 sheet.Rows(1).RowHeight = 35;//设置行高 //sheet.Rows(1).Font.Name="黑体";//设置字体 //sheet.Columns.AutoFit;//所有列自适应宽度 //水平对齐方式(貌似-4108为水平居中) //sheet.Range( sheet.Cells(1,1),sheet.Cells(1,5)).HorizontalAlignment =-4108; //垂直对齐方式 //sheet.Range( sheet.Cells(1,1),sheet.Cells(1,5)).VerticalAlignment =-4108; //根据Borders()中参数值设置各个方向边距,1,2,3,4--->top,buttom,left,right //sheet.Range( sheet.Cells(2,1),sheet.Cells(1,5)).Borders(1).Weight = 2; /**将页面table写入到Excel中,具体复杂情况(合并单元格等)可在这里面具体操作**********/ var LenRow = table.rows.length; //以下为循环遍历获取页面table的cell元素 for (i = 0; i < LenRow; i++) { var lenCol = table.rows(i).cells.length; for (j = 0; j < lenCol; j++) { sheet.Cells(i + 1, j + 1).value = table.rows(i).cells(j).innerText; //通过该语句将table的每个 //cell赋予Excel 当前Active的sheet下的相应的cell下 } } excel.Visible = true;//设置excel为可见 excel.UserControl = true; //将Excel交由用户控制 } </SCRIPT> </head> <body> <input type="button" onclick="ExcelExport('tb_demo');" value="导出Excel"/> <table id="tb_demo" border="1"> <tr> <td>序号</td> <td>名称</td> <td>属性</td> <td>标准</td> <td>备注</td> </tr> <tr> <td>1</td> <td>name</td> <td>property</td> <td>standard</td> <td>remark</td> </tr> <tr> <td>2</td> <td>name2</td> <td>property2</td> <td>standard2</td> <td>remark2</td> </tr> <tr> <td>3</td> <td>name3</td> <td>property3</td> <td>standard3</td> <td>remark3</td> </tr> </table> </body> </html>
ps:据说这种用法对于大型项目来说不太好,存在线程安全问题。
但是如果是做简单的导出,要求不高的话,可以借鉴。
相关文章推荐
- Js 导出table内容到Excel的简单实例
- JS将Web页面中的Table导出为Excel
- Html Table用JS导出excel格式问题 导出EXCEL后单元格里的000412341234会变成412341234 7-14 会变成 2018-7-14(7月14) 自定义格式 web利用table表格生成excel格式问题 js导出excel增加表头、mso-number-format定义数据格式 数字输出格式转换 mso-number-format:"\@"
- Js 导出table内容到Excel的简单实例
- js将table导出到excel
- .Net直接将Web页面table导出到Excel
- 如何使用html表格自定义或采用tableexport.js第三方插件以excel格式导出
- js将table导出excel 之文件改名及格式化全攻略
- js导出table到Excel
- 通过tableExport.js插件来实现导出Excel/Pdf/txt/json等
- js将页面table导出excel,弹出保存对话框
- js导出table数据到excel即导出为EXCEL文档的方法
- 使用tableExport.js直接导出web页面上的table
- js导出table中的EXCEL总结
- js操作table表格导出数据到excel方法
- JS将Table导出到Excel
- [JS]WEB页面导出为EXCEL文档的方法--转
- js 三种方式 从Table导出到 Excel
- js把html中的table数据导出到Excel中