2015-11-13 150 views
1

将HTML表格导出为Excel文件的正确方法是什么,以便用户可以单击按钮并下载Excel文件(理想情况下使用Angular而不使用服务器)?将HTML表格导出为Excel文件的正确方法?

我见过很多的答案是这样的: Export to xls using angularjs但这样做提供了一种类似于下面的错误:

“的文件格式和扩展名不匹配......该文件可能被损坏.. “

我相信该文件实际上是HTML或XML格式,而不是实际的Excel。

该警告不会向用户呈现良好的图像。

在没有使用服务器的情况下将文件实际导出为Excel的正确方法是什么?

或者是创建该文件所需的服务器?

回答

1

如果你只是使用表格数据,那么我会争辩说最好的解决方案是建立一个CSV文件。这可以由excel本地打开,并在必要时转换为XLS文件。您可以通过使用数据URI排列数据来完成此操作。 octet-stream将强制文件下载,而不是在浏览器中打开。这里是一个例子:

<a href="data:application/octet-stream,field1%2Cfield2%0Afoo%2Cbar%0Agoo%2Cgai%0A">CSV</a> 
+0

谢谢!为了避免用户(处理csv文件)出现混淆,您知道是否有简单的方法将csv文件转换为客户端的xls文件? – manihiki

+0

这需要单独上传csv并使用库将其转换为xls,然后重新下载它。带有示例的好图书馆可以在这里找到:https://github.com/faisalman/simple-excel-js。 – greed

相关问题