使用 jquery 从 html 表格生成 Excel 工作表

2024-04-26

我想在用户单击按钮后生成 Excel 工作表。基本上我想做的正是这里讨论的

如何将 html 表格值传递到 Excel 工作表单元格 https://stackoverflow.com/questions/6517106/how-to-pass-html-table-values-to-excel-sheet-cells(卡勒·H·瓦拉瓦斯回答)

JavaScript 将 HTML 表格导出到 Excel https://stackoverflow.com/questions/5401351/javascript-to-export-html-tables-to-excel?rq=1

但不知怎的,当我点击按钮时什么也没有发生。我正在使用 Mozilla 浏览器。我的代码需要启用 ActiveXObject。我需要做一些额外的事情来完成它吗? ?

我创建了这个小提琴来进行测试。如果这有效,我将尝试我的真实代码。如果这对您有用,请告诉我。谢谢

jFiddle http://jsfiddle.net/LBDwP/1/

Code :

JS :

<script type="text/javascript">
    function CreateExcelSheet() {
        var i, j, str,
                myTable = document.getElementById('mytable'),
                rowCount = myTable.rows.length,
                excel = new ActiveXObject('Excel.Application');// Activates Excel
        excel.Workbooks.Add(); // Opens a new Workbook
        excel.Application.Visible = true; // Shows Excel on the screen
        for (i = 0; i < rowCount; i++) {
            for (j = 0; j < myTable.rows[i].cells.length; j++) {
                str = myTable.rows[i].cells[j].innerText;
                excel.ActiveSheet.Cells(i + 1, j + 1).Value = str; // Writes to the sheet
            }
        }
        return;
    }
</script>

Html :

<table id ="myTable" >
            <tr>
                <td>1</td>
                <td>Jan</td>
                <td>01/04/2012</td>
                <td>Approved</td>
            </tr>
            <tr>
                <td>2</td>
                <td>Feb</td>
                <td>01/04/2012</td>
                <td>Approved</td>
            </tr>
        </table>
        <form>
            <input type="button" onclick="CreateExcelSheet();" value="Create Excel Sheet" >
        </form>

答案如下:在 Firefox 浏览器中将动态 html 表导出到 javascript 中的 Excel https://stackoverflow.com/questions/6955627/export-dynamic-html-table-to-excel-in-javascript-in-firefox-browser通过 因辛

var tableToExcel = (function() {
      var uri = 'data:application/vnd.ms-excel;base64,'
        , template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>'
        , base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) }
        , format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p]; }) }
      return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {worksheet: name || 'Worksheet', table: table.innerHTML}
        window.location.href = uri + base64(format(template, ctx))
      }
    })()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 jquery 从 html 表格生成 Excel 工作表 的相关文章

  • 按搜索值过滤元素 - 多个单词

    我有一个由 DIV 和 INPUT 搜索框组成的列表
  • jQuery AJAX 请求在 IE8 中失败,并显示消息“错误:调用 open 方法之前无法调用此方法。”

    我正在使用 jQuery 1 4 2 并尝试执行一个简单的 AJAX 请求 目标 URL 返回一个 JSON 字符串 我使用 jslint 对其进行了验证 该请求在 Firefox 和 Chrome 中有效 但不想在 IE8 中工作 我无法
  • 设置 cookie 时中断 JavaScript 执行

    当设置 cookie 时 是否可以始终中断浏览器开发人员工具中的 javascript 执行 无需显式设置 JS 断点 document cookie 在 html head 块的开头添加此代码片段效果很好
  • php - 解析html页面

    div divbox div p para1 p p para2 p p para3 p table class table tr td td tr table p para4 p p para5 p 有人可以告诉我如何解析这个 html
  • Chrome 扩展程序在代码中使用 client_secret

    我正在开发具有自己的 oAuth 授权的 Google Chrome 扩展 当然 我必须使用 client id 和 client secret 作为请求令牌 有什么办法可以向用户隐藏这些数据吗 由于此请求只是 javascript 源代码
  • jQuery:处理 getJSON() 中的错误?

    使用 jQuery 时如何处理 500 错误getJSON http api jquery com jQuery getJSON 有几个关于错误处理的问题getJSON and https stackoverflow com questio
  • 使用 CSS 或 Javascript 填充动画

    我只是想知道是否可以使用 CSS 或 javascript 创建填充动画 基本上我想创建一个填充动画 如下图所示 http i40 tinypic com eit6ia png http i40 tinypic com eit6ia png
  • 将 MS 转换为秒

    我发现这个公式可以用来将 MS 转换为秒 但它是为 Excel 2002 编写的 而我正在使用 2010 CONCATENATE TEXT INT B1 1000 86400 hh mm ss B1 INT B1 1000 1000 以下是
  • 有没有办法在 onclick 触发时禁用 iPad/iPhone 上的闪烁/闪烁?

    所以我有一个有 onclick 事件的区域 在常规浏览器上单击时 它不会显示任何视觉变化 但在 iPad iPhone 上单击时 它会闪烁 闪烁 有什么办法可以阻止它在 iPad iPhone 上执行此操作吗 这是一个与我正在做的类似的示例
  • 不可勾选的单选按钮与专有的复选框

    从 UI 角度来看 是拥有一组具有取消选中功能的单选按钮更好 还是拥有一组独占的复选框 意味着一次只能选中一个 更好 Update 我没想到对此会有如此负面的反应 如果我给出一个更接近其使用方式的示例 也许会有所帮助 我有一个充满数据绑定内
  • Jquery一键提交多个同名表单

    我有动态创建的循环表单 我需要一键提交所有表单 我正在遵循下面的代码 你能建议我怎么做吗 谢谢
  • Vuejs 2:去抖动不适用于手表选项

    当我在 VueJs 中反跳此函数时 如果我提供毫秒数作为原语 它就可以正常工作 但是 如果我将其提供为对 prop 的引用 它会忽略它 这是道具的缩写版本 props debounce type Number default 500 这是不
  • 在移动设备上滚动

    这个问题更多的是一个建议研究 我确实希望它对其他人有帮助 并且它不会关闭 因为我不太确定在哪里寻求有关此事的建议 在过去的 6 个月里 我一直在进行移动开发 我有机会处理各种设备上的各种情况和错误 最麻烦的是滚动问题 当涉及到在网站的多个区
  • 对于只触及我的工作表的 Google 表格脚本,收到“此应用程序未经验证”

    我正在编写一个 Google Sheets 脚本 我只想访问与 gs 文件关联的同一电子表格中的数据 似乎我应该有权在自己的电子表格中运行脚本 但是每当我运行一个函数时 我都会得到一个This app isn t verified信息 我该
  • Chrome//kendoUI/jQuery:超出最大调用堆栈大小

    我正在使用 hottowell 模板来创建 spa 应用程序 并且我从 jquery 中收到了一个很好的错误 基本上我的问题从此刻开始尝试绑定我的视图 viewModelBinder js 来自 durandal 库 viewModelBi
  • 在 Javascript 中连接空数组

    我正在浏览一些代码 我想知道这有什么用处 grid push concat row 根据我的理解 它等同于 grid push row 为什么要大惊小怪 连接 你想使用 concat当您需要展平数组并且没有由其他数组组成的数组时 例如 va
  • Javascript - 水波纹效果

    我需要 JS 上的脚本 它将以 水波纹 样式更改 images html 抱歉 6MB GIF 文件 http fcuunited ru temp listening2 gif http fcunited ru temp listening
  • 如何用另一个响应替换窗口的 URL 哈希?

    我正在尝试使用替换方法更改哈希 URL document location hash 但它不起作用 function var anchor document location hash this returns me a string va
  • 使用 XMLHTTP 进行抓取会在特定类名处引发错误

    我正在尝试使用此代码抓取网站以提取姓名和联系人 Sub Test Dim htmlDoc As Object Dim htmlDoc2 As Object Dim elem As Variant Dim tag As Variant Dim
  • 使用 MongoDB 和 Nodejs 插入和查询日期

    我需要一些帮助在 mongodb 和 nodejs 中按日期查找记录 我将日期添加到抓取脚本中的 json 对象 如下所示 jsonObj last updated new Date 该对象被插入到 mongodb 中 我可以看到如下 la

随机推荐

  • @Transactional 注释的替代方案

    spring中回滚事务除了 Transactional注解还有什么替代方案 我已经使用了这个注释 但我想要在 catch 块中回滚事务的方式 有什么办法吗 提前致谢 这是一个草稿 public class SomeService imple
  • Firebase云功能不触发onCreate

    尝试使用 Cloud Functions 处理联系表单提交以发送电子邮件 Hello World 功能正常启动 所以我认为设置很好 该表单填充 消息 集合 但我没有收到以下触发器的日志条目 或错误 const functions requi
  • @types/jest index.d.ts 文件返回错误

    我刚刚将 types jest 安装到了我的 stenciljs 入门应用程序中 现在 当我开始我的项目时 新安装的节点包返回了几个错误 这是我访问时返回的错误npm start我的项目 ERROR TypeScript node modu
  • 自动调整 ggplot 中条形的大小以实现多个图形 R 的均匀性

    我在循环中生成几个条形图 它们都根据输出大小 从绘图 设备大小假设 而不是根据条形大小调整大小 这意味着具有两个条形图的图具有粗条形图 而具有 6 个条形图的图具有细条形图 但两个输出的大小相同 下面的代码代表了我的带有可重现数据的脚本 我
  • 在 C#4 中向 ProgressChanged 事件添加额外参数

    这是我的代码 简单下载器 public void DownloadFile string urlAddress string location using webClient new WebClient webClient Download
  • SQL——排序数据

    因此 我的学校老师要求我从现有数据库中整理一些数据 这很容易手动完成 但如果记录超过 100 条 则时间太长 他是这样问我的 有单独的桌子 其中一个称为 联系人 有 2 列 ID 姓名 第二个称为电子邮件 和第三个 CONT EMAIL 他
  • 将 uint64_t 转换为 std::string

    如何将 uint64 t 值传输到 std string 我需要构造包含该值的 std string 例如这样的事情 void genString uint64 t val std string str some code for str
  • 如何从 FinalBuilder 输出将被 TeamCity 捕获的消息?

    我正在运行 TeamCity Professional 4 5 3 和 FinalBuilder Pro 6 TeamCity 使用命令行任务运行 FinalBuilder 项目 如何让 FinalBuilder 将消息打印到构建日志中 以
  • 如何限制素材输入中的特殊字符

    我有一个材料输入控件 我在用户输入时限制了特殊字符 但是当在任何编辑器中键入一些单词并复制并粘贴带有特殊字符的单词时 这是不起作用的 我已经为此编写了指令以防止特殊字符 但是可以在复制粘贴中提供更好的解决方案限制 应用程序组件 html
  • 强连通分量有什么用?

    我发现了几种可以解释的算法how在有向图中找到强连通分量 但没有解释why你会想要这样做 强连通分量有哪些应用 您应该查看 Coursera 上 Tim Roughgarden 的算法简介课程 对于他所讨论的每一种算法 他都会解释其一些应用
  • 使用 Active Directory 验证 Sharepoint?

    只需要找到一种简单的方法来让 AD 进行身份验证作为 Sharepoint 站点的登录名 这相当快速和简单地开始吗 Thanks 对于 SharePoint 2007 请参阅此article http technet microsoft c
  • 更改 R 中函数的默认参数

    我正在跟进这个答案 https stackoverflow com a 62946040 7223434 我想知道是否有办法设置参数的默认值rug to FALSE和论证multiline to TRUE在生成的图中library effe
  • 在 :before 和 :after 上为每个元素声明“content”属性是否会带来巨大的性能问题?

    您可能知道 如果您愿意使用 before and or after伪元素没有在其中设置文本 您仍然需要声明content 使它们可见 我刚刚将以下内容添加到我的基本样式表中 before after content 所以我不必再进一步声明了
  • 移动设备上的全屏画布

    我创建了一个小型画布游戏 希望它能够在 PC 和移动设备上运行 在 PC 上 画布区域可以按预期工作 但在为移动设备设计时就会出现问题 有没有一种方法 CSS 或 javascript 可以让用户双击网站内的画布区域时变成全屏 除非画布足够
  • 如何有效地使用 python 中的空数据填充文件?

    我需要创建不包含数据的任意大小的文件 它们可能相当大 虽然我可以循环遍历并写入一个空字符 直到达到文件大小 但这看起来很难看 with open filename wb as f what goes here 执行此操作的有效 Python
  • 如何获取特定CSS列的内容

    对不起我的英语不好 我正在使用 css 多列布局 有没有办法获取特定列的内容 或者如何找到分隔列的字符串的索引 div class foo div
  • 读取列标题中具有多个分隔符的文件并在末尾跳过一些行

    我是新来的Python我想用pandas用于读取数据 我已经做了一些搜索和努力来解决我的问题 但我仍然在挣扎 提前感谢您的帮助 我有一个如下所示的 txt 文件 skip1 A1 A2 A3 A4 A5 A6 A7 A8 A9 1 2 3
  • 在 SIMD 操作上下文中,非压缩指令和压缩指令有什么区别?

    在 SIMD 操作上下文中 非压缩指令和压缩指令有什么区别 我正在阅读一篇关于优化 SSE 代码的文章 http www cortstratton org articles OptimizingForSSE php batch http w
  • M1 MacBook Pro 上的 Android Studio 无法使用 ABI armeabi-v7a 模拟系统映像

    我的 M1 Macbook Pro 上的 Android Studio 可以很好地模拟 ABI arm64 v8a 的所有系统映像 API 24 29 30 31 但是 它无法使用 ABI armeabi v7a 运行所有映像 例如 API
  • 使用 jquery 从 html 表格生成 Excel 工作表

    我想在用户单击按钮后生成 Excel 工作表 基本上我想做的正是这里讨论的 如何将 html 表格值传递到 Excel 工作表单元格 https stackoverflow com questions 6517106 how to pass