欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    html页面表格导出到excel总结.docx

    • 资源ID:3158297       资源大小:38.79KB        全文页数:7页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    html页面表格导出到excel总结.docx

    html页面表格导出到excel总结html页面表格导出到excel总结 最近一个项目需要把报表的表格导入excel,在网上找了一些方法,比较研究了一下,记在这里,备忘。 表格例子如下: <table id="tableExcel" width="100%" border="1" cellspacing="0" cellpadding="0"> <tr> <td colspan="5" align="center">html 表格导出道Exceltd> tr> <tr> <td>列标题1td> <td>列标题2td> <td>类标题3td> <td>列标题4td> <td>列标题5td> tr> <tr> <td>aaatd> <td>bbbtd> <td>ccctd> <td>dddtd> <td>eeetd> tr> <tr> <td>AAAtd> <td>BBBtd> <td>CCCtd> <td>DDDtd> <td>EEEtd> tr> <tr> <td>FFFtd> <td>GGGtd> <td>HHHtd> <td>IIItd> <td>JJJtd> tr> table> 1、js的方法 A、将整个表格拷贝到EXCEL中 function method1(tableid) var curTbl = document.getElementById(tableid); var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.Add; var oSheet = oWB.ActiveSheet; var sel = document.body.createTextRange; sel.moveToElementText(curTbl); sel.select; sel.execCommand("Copy"); oSheet.Paste; oXL.Visible = true; B、读取表格中每个单元到EXCEL中: function method2(tableid) var curTbl = document.getElementById(tableid); var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.Add; var oSheet = oWB.ActiveSheet; var Lenr = curTbl.rows.length; for (i = 0; i < Lenr; i+) var Lenc = curTbl.rows(i).cells.length; for (j = 0; j < Lenc; j+) oSheet.Cells(i + 1, j + 1).value = curTbl.rows(i).cells(j).innerText; oXL.Visible = true; c、把表格输出到另一个页面,然后存成cvs格式 function getXlsFromTbl(inTblId, inWindow) try var allStr = "" var curStr = "" if (inTblId != null && inTblId != "" && inTblId != "null") curStr = getTblData(inTblId, inWindow); if (curStr != null) allStr += curStr; else alert("你要导出的表不存在"); return; var fileName = getExcelFileName; doFileExport(fileName, allStr); catch(e) alert("导出发生异常:" + e.name + "->" + e.description + "!"); function getTblData(inTbl, inWindow) var rows = 0; var tblDocument = document; if (!inWindow && inWindow != "") if (!document.all(inWindow) return null; else tblDocument = eval(inWindow).document; var curTbl = tblDocument.getElementById(inTbl); var outStr = "" if (curTbl != null) for (var j = 0; j < curTbl.rows.length; j+) for (var i = 0; i < curTbl.rowsj.cells.length; i+) if (i = 0 && rows > 0) outStr += " /t" rows -= 1; outStr += curTbl.rowsj.cellsi.innerText + "/t" if (curTbl.rowsj.cellsi.colSpan > 1) for (var k = 0; k < curTbl.rowsj.cellsi.colSpan - 1; k+) outStr += " /t" if (i = 0) if (rows = 0 && curTbl.rowsj.cellsi.rowSpan > 1) rows = curTbl.rowsj.cellsi.rowSpan - 1; outStr += "/r/n" else outStr = null; alert(inTbl + "不存在 !"); return outStr; function getExcelFileName var d = new Date; var curYear = d.getYear; var curMonth = "" + (d.getMonth + 1); var curDate = "" + d.getDate; var curHour = "" + d.getHours; var curMinute = "" + d.getMinutes; var curSecond = "" + d.getSeconds; if (curMonth.length = 1) curMonth = "0" + curMonth; if (curDate.length = 1) curDate = "0" + curDate; if (curHour.length = 1) curHour = "0" + curHour; if (curMinute.length = 1) curMinute = "0" + curMinute; if (curSecond.length = 1) curSecond = "0" + curSecond; var fileName = "table" + "_" + curYear + curMonth + curDate + "_" + curHour + curMinute + curSecond + ".csv" return fileName; function doFileExport(inName, inStr) var xlsWin = null; if (!document.all("glbHideFrm") xlsWin = glbHideFrm; else var width = 6; var height = 4; var openPara = "left=" + (window.screen.width / 2 - width / 2) + ",top=" + (window.screen.height / 2 - height / 2) + ",scrollbars=no,width=" + width + ",height=" + height; xlsWin = window.open("", "_blank", openPara); xlsWin.document.write(inStr); xlsWin.document.close; xlsWin.document.execCommand('Saveas', true, inName); xlsWin.close; 总结:比较上面3种方法,感觉第一种方法比较完美一些,因为这种方法比较完整的输出表格的格式。但,第一和第二种方法都用了ActiveX 对象,对客户端的安全有要求,而且最大的问题还有一个,就是excel 对象无法关闭。第3中方法虽然没有用ActiveX 对象,但是用了弹出窗口输出, 如果禁止了弹出窗口则无法使用。 对于execl 对象无法关闭的问题,下面的方法是一个权宜方法: function Cleanup window.clearInterval(idTmr); CollectGarbage; 调用方法: idTmr = window.setInterval("Cleanup;",1); 2、A(c#)中的方法 这种方法其实类似上面的js的第3中方法(也可以在其他的web脚本来实现,比如asp中vbscript,或者php),把表格用文件流的方式 输出为excel。实例代码如下: public void OutPutExcel(string title) Response.Clear; Response.Buffer = true; Response.Charset = "utf-8" Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(title + ".xls"); Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8"); Response.ContentType = "application/ms-excel" Page.EnableViewState = false; System.IO.StringWriter oStringWriter = new System.IO.StringWriter; System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter); this.Page.RenderControl(oHtmlTextWriter); string temp = oStringWriter.ToString; Response.Write(temp); Response.End; 这种方法的从本质上说并非标准的excel格式,不过把html格式的文件另存为excel的格式,然后用excel打开罢了。

    注意事项

    本文(html页面表格导出到excel总结.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开