如何将动态生成的 HTML 表格插入 iframe 以实现导出 Excel 功能?
本文讨论了如何在 iframe 中动态插入 html 元素以满足将表转换成 excel 的要求。
在提供的问题代码中,从服务器获取的 html 数据形式如下:
<html xmlns:x="urn:schemas-microsoft-com:office:excel"> <head> <meta http-equiv="content-type" content="application/ms-excel; charset=gb2312" /> <!-- [if gte mso 9]> <xml> <x:excelworkbook> <x:excelworksheets> <x:excelworksheet> <x:name>sheetname</x:name> <x:worksheetoptions> <x:print> <x:validprinterinfo /> </x:print> </x:worksheetoptions> </x:excelworksheet> </x:excelworksheets> </x:excelworkbook> </xml> <![endif]--><!> </head> <body> <table> <tbody> <tr> <th>交易日期</th> <th>总订单数</th> <th>交易总额</th> <th>完成订单数</th> <th>完成总额</th> <th>撤单总订单数</th> <th>撤单总额</th> </tr> <tr> <td>2017-12-05</td> <td>7414</td> <td>1483.6</td> <td>7414</td> <td>1483.6</td> <td>0</td> <td>0</td> </tr> </tbody> </table> </body> </html>
为了将此 html 片段插入到 iframe 中,以下步骤可能有用:
-
创建 iframe 元素:
<iframe id="exceliframe" style="width: 600px; height: 400px;"></iframe>
-
使用 document.getelementbyid("exceliframe").contentwindow.document 访问 iframe 的文档对象:
const iframedocument = document.getelementbyid("exceliframe").contentwindow.document;
-
然后,您可以使用 iframedocument.body.innerhtml = htmldata 来将获取的 html 数据插入 iframe 的正文中:
iframeDocument.body.innerHTML = htmlData;
通过这些步骤,动态生成的 html 表格将插入到 iframe 中,用户可以将其另存为 excel 文件以完成导出操作。
以上就是如何将动态生成的 HTML 表格插入 iframe 以实现导出 Excel 功能?的详细内容,更多请关注其它相关文章!