我正在使用 IE9,我有以下代码来下载 html 表格作为 Excel 电子表格:
<a id="toExcel" onclick="window.open('data:application/vnd.ms-excel,' + document.getElementById('resultsTable').outerHTML.replace(/ /g, '%20'));e.preventDefault();" href="javascript:void(0);">Excel</a>
这适用于其他浏览器,例如 Chrome,但不适用于 IE9。它只是打开一个新选项卡,其中的代码位于网址栏中。
如何让它在 IE9 中运行?
我尝试将 onclick 事件放在另一个元素中,例如按钮,但它不起作用。
使用数据表,库似乎在表中添加了很多其他内容,我只想要这个功能。
赏金脚注:
必须在 IE9 上运行。
请不要建议https://datatables.net 。出于内部原因,我们 无法使用此建议。
- 很高兴从我已经尝试过的事情中得到启发(请参阅代码片段 之前)只要它有效
- 必须下载为 xlsx,并且必须在 Excel 2010 上正确打开。
- 该项目使用 Sharepoint 2013 和自定义 js/jquery Web 部件。 我们已经动态生成了一个html表格并且需要能够 如上导出至 Excel。
感谢您的帮助
最佳答案
正如已经提到的,服务器端实现会更好。创建一个对 Controller 的 AJAX 调用,其中包含适当的 ID(查询数据所需)并将其发送回浏览器。如果您的情况无法做到这一点,请查看以下帖子:
How to change "comma" separator to something else in blob csv?
我可以复制我自己的答案,但这没有意义;)
关于javascript - excel onclick 表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24119268/