`
huibin
  • 浏览: 754175 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

WEB页面导出为EXCEL文档的方法

    博客分类:
  • JS
阅读更多


</body> 
</html> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>WEB页面导出为EXCEL文档的方法</title>
</head>
<body>
    <table id="tableExcel" width="100%" border="1" cellspacing="0" cellpadding="0">
        <tr>
            <td colspan="5" align="center">
                WEB页面导出为EXCEL文档的方法</td>
        </tr>
        <tr>
            <td>
                列标题1</td>
            <td>
                列标题2</td>
            <td>
                列标题3</td>
            <td>
                列标题4</td>
            <td>
                列标题5</td>
        </tr>
        <tr>
            <td>
                aaa</td>
            <td>
                bbb</td>
            <td>
                ccc</td>
            <td>
                ddd</td>
            <td>
                eee</td>
        </tr>
        <tr>
            <td>
                AAA</td>
            <td>
                BBB</td>
            <td>
                CCC</td>
            <td>
                DDD</td>
            <td>
                EEE</td>
        </tr>
        <tr>
            <td>
                FFF</td>
            <td>
                GGG</td>
            <td>
                HHH</td>
            <td>
                III</td>
            <td>
                JJJ</td>
        </tr>
    </table>
    <input type="button" onclick="javascript:method1('tableExcel');" value="第一种方法导入到EXCEL">
    <input type="button" onclick="javascript:method2('tableExcel');" value="第二种方法导入到EXCEL">
    <input type="button" onclick="javascript:getXlsFromTbl('tableExcel',null);" value="第三种方法导入到EXCEL">
    <script language="javascript"><!--
 
 function method1(tableid) {//整个表格拷贝到EXCEL中
     var curTbl = document.getElementById(tableid);
     var oXL = new ActiveXObject("Excel.Application");
     //创建AX对象excel
     var oWB = oXL.Workbooks.Add();
     //获取workbook对象
         var oSheet = oWB.ActiveSheet;
     //激活当前sheet
     var sel = document.body.createTextRange();
     sel.moveToElementText(curTbl);
     //把表格中的内容移到TextRange中
     sel.select();
     //全选TextRange中内容
     sel.execCommand("Copy");
     //复制TextRange中内容 
     oSheet.Paste();
     //粘贴到活动的EXCEL中      
     oXL.Visible = true;
     //设置excel可见属性
 }
 function method2(tableid) //读取表格中每个单元到EXCEL中
 {
     var curTbl = document.getElementById(tableid);
     var oXL = new ActiveXObject("Excel.Application");
     //创建AX对象excel
     var oWB = oXL.Workbooks.Add();
     //获取workbook对象
     var oSheet = oWB.ActiveSheet;
     //激活当前sheet
     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;
     //设置excel可见属性
 }
 function getXlsFromTbl(inTblId, inWindow) {
     try {
         var allStr = "";
         var curStr = "";
         //alert("getXlsFromTbl");
         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;
    //alert("getTblData is " + inWindow);
    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++) {
            //alert("j is " + j);
            for (var i = 0; i < curTbl.rows[j].cells.length; i++) {
                //alert("i is " + i);
                if (i == 0 && rows > 0) {
                    outStr += " \t";
                    rows -= 1;
                }
                outStr += curTbl.rows[j].cells[i].innerText + "\t";
                if (curTbl.rows[j].cells[i].colSpan > 1) {
                    for (var k = 0; k < curTbl.rows[j].cells[i].colSpan - 1; k++) {
                        outStr += " \t";
                    }
                }
                if (i == 0) {
                    if (rows == 0 && curTbl.rows[j].cells[i].rowSpan > 1) {
                        rows = curTbl.rows[j].cells[i].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 = "leo_zhang" + "_" + curYear + curMonth + curDate + "_"
            + curHour + curMinute + curSecond + ".csv";
    //alert(fileName);
    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();
}
   
// --></script>
</body>
</html>


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/qiume/archive/2010/05/13/5586635.aspx

分享到:
评论

相关推荐

    WEB页面导出为EXCEL,Word文档的方法

    WEB页面导出为EXCEL,Word文档的方法。利用网页js直接导出word和excel!

    WEB页面导出为EXCEL,word文档的方法.rar

    总结来说,Web页面导出Excel和Word文档涉及的主要知识点包括JavaScript编程、DOM操作、特定库的使用(如`xlsx`和`docx`)、数据格式转换和文件下载机制。理解并掌握这些知识,你就可以在自己的Web应用中实现灵活的...

    WEB页面导出为WORD、EXCEL文档的方法(源代码)

    WEB 页面导出为 WORD、EXCEL 文档的方法(源代码) 本文将详细介绍如何使用 ASP 语言将 WEB 页面导出为 WORD、EXCEL 文档,包括使用 JavaScript 语言将表格内容导出到 EXCEL 文档中,并使用 ActiveXObject 对象来...

    将web页面中的数据导出到EXCEL并自动打印

    总结来说,将Web页面数据导出到Excel并自动打印涉及前端数据收集、服务器生成Excel文件、文件下载触发、以及可能的自动打印操作。每个环节都需要细致的设计和实现,以提供高效、安全且用户体验良好的功能。在实际...

    JSP页面导出EXCEL简单方法

    在IT行业中,尤其是在Web开发领域,常常需要将网页上的数据导出为Excel格式,以便用户进行下载和进一步处理。本文将详细介绍如何使用JSP(JavaServer Pages)来实现这一功能,特别是针对页面上的HTML表格数据。 ...

    导出jsp页面为excel文档

    ### 如何在JSP中将页面内容导出为Excel文档 #### 标题解析:导出JSP页面为Excel文档 本标题明确指出本文的主要内容是介绍如何将JSP页面的内容转换并导出为Excel文档。JSP(JavaServer Pages)是一种基于Java的技术...

    把Web Control导出为Excel或Word

    本文介绍了如何将Web控件导出为Excel或Word文档的技术细节,包括文档类型定义、导出方法编写及调用示例。通过这种方式,可以轻松地实现在Web应用中导出数据的需求。开发者可以根据具体的应用场景调整和优化代码,以...

    NOPI导出EXCEL/xls/xlsx并输出到WEB页面

    标题 "NOPI导出EXCEL/xls/xlsx并输出到WEB页面" 描述的是一个使用NOPI(可能是某种特定的开发框架或库)处理Excel文件并将其数据展示在Web页面上的过程。NOPI允许开发者执行Excel文件的导入、导出以及下载功能,同时...

    ASP.NET页面数据导出excel

    本文将详细介绍四种从ASP.NET页面导出数据到Excel的方法。 方法一: 这种方法利用了ASP.NET的Response对象,将DataGrid或GridView等控件的数据直接输出为HTML格式,然后设置Content-Type为"application/vnd.ms-...

    POI导出Excel文件

    这个实例提供了两种方法来导出Excel文件:通过Servlet和通过main方法。这两种方法都是在Java环境中操作Excel数据的有效方式。 首先,让我们详细了解一下Apache POI库。POI提供了一个API,允许开发者在Java应用程序...

    asp.net+Ajax实现Excel文件导出

    本篇文章将详细讲解如何利用ASP.NET与Ajax技术实现在Web应用中导出Excel文件。 首先,ASP.NET是Microsoft开发的一个用于构建动态网站、Web应用程序和服务的框架。它基于.NET Framework,提供了丰富的服务器控件、...

    纯前端:luckysheet在线编辑Excel导出,Excel文件导入

    反之,编辑后的数据也可以导出为Excel文件,方便用户在离线环境下继续处理。这一特性使得Luckysheet能够无缝地与其他Excel工具集成,扩大了其应用场景。 在实际运行时,项目只需要在浏览器中打开index.html文件即可...

    ASP实现web分页打印及web页面导出Excel文件.pdf

    综上所述,ASP提供了实用的方法来满足web应用中导出Excel和打印的需求。通过JavaScript和CSS,我们可以实现用户友好且高效的交互,使用户能够轻松地管理和处理网页上的大量数据。同时,通过理解并利用这些技术,...

    jquery 导出excel方法

    下面将详细介绍jQuery导出Excel的方法,以及相关知识点。 1. **jQuery插件:TableExport** 文件`tableExport.jquery.plugin-a891806`可能是一个名为TableExport的jQuery插件,它允许开发者将HTML表格数据导出为...

    Web导出Excel(可以运行的)

    在这个"Web导出Excel(可以运行的)"项目中,开发者提供了一种方法,使得网页能够方便地生成具有美观样式的Excel文件,并且支持用户下载。让我们深入探讨一下其中涉及的关键技术和知识点。 1. **Apache POI**: ...

    将Web页面中的数据导出到Excel

    总结来说,将Web页面中的数据导出到Excel涉及前端的数据获取、转换、文件创建和下载触发等多个环节。通过使用合适的JavaScript库和遵循良好的编程实践,我们可以为用户提供便捷的数据导出功能,从而提升Web应用的...

    将表格中的数据导出为EXCEL文件

    本篇文章将详细介绍如何将表格中的数据导出为Excel文件,帮助你更有效地管理和利用你的数据。 首先,我们需要了解表格数据的来源。这可能来自网页、数据库、CSV文件或者其他任何具有结构化数据的源。对于大多数应用...

    java导出成Excel的方法

    Java导出数据到Excel是一种常见的需求,特别是在Web应用或者数据处理场景中。这段代码展示了如何使用JExcelAPI库来实现这个功能。JExcelAPI是一个Java库,它允许开发者读写Microsoft Excel格式的文件,而无需依赖于...

Global site tag (gtag.js) - Google Analytics