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

通过js生成Excel文件示例

阅读更多
<html>  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=GBK">  
<meta http-equiv="pragma" content="no-cache">  
<script language="jscript">  
function replaceHtml(replacedStr,repStr,endStr){  
    var replacedStrF = "";  
    var replacedStrB = "";  
    var repStrIndex = replacedStr.indexOf(repStr);  
    while(repStrIndex != -1){  
        replacedStrF = replacedStr.substring(0,repStrIndex);  
        replacedStrB = replacedStr.substring(repStrIndex,replacedStr.length);  
        replacedStrB = replacedStrB.substring(replacedStrB.indexOf(endStr)+1,replacedStrB.length);  
        replacedStr = replacedStrF + replacedStrB;  
        repStrIndex = replacedStr.indexOf(repStr);  
    }  
    return replacedStr;  
}  
//elTalbeOut 这个为导出内容的外层表格,主要是设置border之类的样式,elDiv则是整个导出的html部分  
function htmlToExcel(elTableOut,elDiv){  
    try{  
        //设置导出前的数据,为导出后返回格式而设置  
        var elDivStrBak = elDiv.innerHTML;  
        //设置table的border=1,这样到excel中就有表格线 ps:感谢双面提醒  
        elTableOut.border=1;  
        //过滤elDiv内容  
        var elDivStr = elDiv.innerHTML;  
        elDivStr = replaceHtml(elDivStr,"<A",">");  
        elDivStr = replaceHtml(elDivStr,"</A",">");  
        elDiv.innerHTML=elDivStr;     
          
        var oRangeRef = document.body.createTextRange();  
        oRangeRef.moveToElementText( elDiv );  
        oRangeRef.execCommand("Copy");  
          
        //返回格式变换以前的内容  
        elDiv.innerHTML = elDivStrBak;  
        //内容数据可能很大,所以赋空  
        elDivStrBak = "";  
        elDivStr = "";  
          
        var oXL = new ActiveXObject("Excel.Application")  
        var oWB = oXL.Workbooks.Add ;  
        var oSheet = oWB.ActiveSheet ;  
        oSheet.Paste();  
        oSheet.Cells.NumberFormatLocal = "@";  
        oSheet.Columns("D:D").Select  
        oXL.Selection.ColumnWidth = 20 
        oXL.Visible = true;       
        oSheet = null;  
        oWB = null;  
        appExcel = null;  
    }catch(e){  
        alert(e.description)  
    }  
}  
</script>  
<title></title></head>  
 
<body leftmargin="0" topmargin="0">  
<table width="90%" border="0" cellspacing="0" cellpadding="0" align="center">  
<tr>  
<td height="40" align="center" valign="middle"><INPUT type="button" value="导出" id="dcExcel" onClick="htmlToExcel(document.getElementById('elTableOut'),document.getElementById('elDiv'));"></td>  
  </tr>  
 
</table>  
 
<div id="elDiv">  
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="1" bordercolor="#000000" bgcolor="#000000" id="elTableOut">  
  <tr>  
    <td height="40" align="center" valign="middle" colspan="12" bgcolor="#FFFFFF"><strong>状况汇总表</strong></td>  
  </tr>  
  <tr>  
    <td width="6%" rowspan="2" align="center" bgcolor="#FFFFFF">序号</td>  
    <td width="20%" rowspan="2" align="center" bgcolor="#FFFFFF">a</td>  
    <td width="7%" rowspan="2" align="center" bgcolor="#FFFFFF">b</td>  
    <td width="7%" rowspan="2" align="center" bgcolor="#FFFFFF">c</td>  
    <td width="7%" rowspan="2" align="center" bgcolor="#FFFFFF">d</td>  
    <td width="7%" rowspan="2" align="center" bgcolor="#FFFFFF">e</td>  
    <td width="7%" rowspan="2" align="center" bgcolor="#FFFFFF">f</td>  
    <td width="7%" rowspan="2" align="center" bgcolor="#FFFFFF">g</td>  
    <td height="25" colspan="4" align="center" bgcolor="#FFFFFF">h</td>  
  </tr>  
  <tr>  
    <td width="7%" height="25" align="center" bgcolor="#FFFFFF">i</td>  
    <td width="7%" align="center" bgcolor="#FFFFFF">j</td>  
    <td width="7%" align="center" bgcolor="#FFFFFF">k</td>  
    <td width="7%" align="center" bgcolor="#FFFFFF">l</td>  
  </tr>   
</table>  
</div>  
 
</body>  
</html> 
分享到:
评论

相关推荐

    HTML表格生成Excel文件代码(纯前端)

    总结起来,纯前端生成HTML表格到Excel文件主要涉及以下步骤: 1. 获取HTML表格数据。 2. 将数据转换为CSV格式。 3. 创建并触发模拟的文件下载链接。 虽然这个方法简单易用,但并不适用于所有场景。在处理大量数据或...

    导出数据生成Excel文件

    在Web开发中,如果你需要在JavaScript环境下生成Excel文件,可以使用SheetJS库。首先,引入`xlsx-style`库,它提供了一些样式支持: ```html &lt;script src="https://unpkg.com/xlsx-style"&gt;&lt;/script&gt; ``` 然后,...

    生成Excel的控件和示例

    2. **控件示例**:如果你在Web开发环境中生成Excel,可能会涉及到前端的交互控件,如使用JavaScript库如Handsontable或Ag-Grid创建表格,然后将其转换为Excel格式。这些控件允许用户在浏览器中编辑数据,然后下载为...

    Node.js-Javascript解析导入导出Excel文件小示例

    这个示例项目"Node.js-Javascript解析导入导出Excel文件小示例"提供了在Web和Node.js环境中操作Excel文件的基础代码。 首先,我们需要安装`js-xlsx`库。在命令行中,运行以下命令: ```bash npm install xlsx ``` ...

    使用gridview生成excel文件

    在.NET开发环境中,使用GridView...综上所述,使用GridView生成Excel文件是.NET Web开发中一个实用的功能,通过合理的设计和公用类的使用,可以提高代码的可维护性和复用性。同时,需要注意性能优化和用户体验的提升。

    nodejs简单读写excel内容的方法示例

    该模块提供了解析Excel文件数据和生成Excel文件的功能。由于node-xlsx仅支持.xlsx格式,对于.xls格式文件的支持则需要其他模块。 另一个模块excel-parser则提供了对.xls和.xlsx格式文件的支持。它允许开发者从Excel...

    用JavaScript控制Excel文件详细说明

    5. **服务器端API交互**:如果选择服务器端方法,你需要构建一个HTTP接口,接收POST请求,解析请求体中的数据,使用服务器端语言生成Excel文件,最后返回文件或提供下载链接。 为了实现这一功能,开发者需要对...

    js读取本地excel文档数据

    通过JavaScript(JS)来读取并解析这些Excel文件可以实现对数据的快速处理与展示。本文将详细介绍如何利用JavaScript读取本地Excel文档数据。 #### 二、技术原理与实现方法 ##### 2.1 使用ActiveXObject读取Excel...

    javascript操作excel生成报表示例_.docx

    总的来说,这个示例提供了一种使用JavaScript直接在客户端生成Excel报表的方法,这在某些场景下可以提高用户体验,但同时也需要注意其兼容性和安全性问题。在实际开发中,考虑到跨平台和安全性的需求,通常会采用...

    js前端读取EXCEL文件

    在JavaScript(JS)开发中,有时我们需要在前端处理Excel文件,例如从用户上传的文件中提取数据或展示数据。这个场景通常涉及到一个叫做"js-xlsx"的库,它允许我们在浏览器环境中解析和操作Excel文件。这个库是开源...

    xlsx.full.js,JS生成excle文件,可设置行高

    在JavaScript开发中,有时我们需要在前端生成Excel文件以便于数据导出或分享。`xlsx.full.js` 是一个强大的库,它允许开发者用纯JavaScript来创建、读取和修改Excel文件,特别适合在Web应用程序中使用。这个库的核心...

    js生成pdf、Excel

    接下来,我们转向JavaScript生成Excel文件。在浏览器环境中,我们可以使用`SheetJS`(也称为`xlsx`)库。`SheetJS`支持读写多种电子表格格式,包括XLSX和CSV。它提供了一套完整的API来操作单元格、行和列,以及设置...

    js导出excel插件

    考虑分批处理数据,或者利用服务端生成Excel文件,然后发送给客户端下载。 7. **其他库** 还有一些其他的库,如`handsontable`、`ag-grid`等,它们不仅支持数据导出,还提供了交互式表格组件,可以提升用户体验。 ...

    js实现Excel导出

    - **FileSaver.js**:这是一个用于在浏览器中保存文件的小型库,与SheetJS结合使用,可以在前端生成并下载Excel文件。 3. **数据转换**: 首先,你需要将你的数据结构(可能是数组、对象等)转换成SheetJS可识别...

    纯前端 JS脚本 导出excel 可动态添加数据

    1. 使用JavaScript库(如`XLSX`)在浏览器环境中生成Excel文件。 2. 动态数据处理,根据用户输入或其他条件实时添加或修改数据。 3. 结合其他库(如`jQuery`)简化前端操作。 4. 提供示例(`demo.html`)和文档(`...

    纯JS实现的读取excel文件内容功能示例【支持所有浏览器】

    总结起来,纯JavaScript实现的读取Excel文件内容功能主要依赖于`XLSX`库,它通过`FileReader API`读取用户上传的文件,并将Excel数据转换为JavaScript可操作的格式。这个功能对于前端开发人员来说非常实用,特别是...

    Node.js-excel4node一个能够轻松创建Excel文件的Node模块

    **Node.js-excel4node** 是一个强大的Node.js模块,专为开发者设计,方便他们在JavaScript环境中轻松地创建和处理Excel文件。这个库以其全面的功能和灵活性而受到广泛的欢迎,尤其适用于那些需要生成复杂Excel报告的...

    xlsx.full.min.js-导入导出excel获取数据demo.zip

    通常,这样的示例会包括如何加载库,如何读取Excel文件(可能通过File API或者URL),如何处理数据,以及如何将数据写回新的Excel文件。 在实际应用中,"xlsx.full.min.js" 使用了逗号分隔值(CSV)、JSON等格式来与...

    SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip

    在本项目中,"SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip",我们主要关注的是如何利用Java技术栈来处理Excel文件,并与数据库进行交互。以下是相关知识点的...

    JS获取Excel数据并显示到页面(IE)

    2. **使用Web服务或后端API**:更通用的方法是通过上传文件到服务器,然后在服务器端使用如PHP、Python、Node.js等语言处理Excel文件,最后将处理后的数据返回给前端JavaScript。这种方法跨浏览器,但需要后端支持。...

Global site tag (gtag.js) - Google Analytics