1

我想将客户端表转换为 Excel .xls,没有服务器端。以下代码成功包含简单表格和 Javascript 以及表格到 Excel,但在 Firefox 或 Chrome 中不起作用?

如何在所有浏览器中运行它?

<script type="text/javascript">
function CreateExcelSheet()
{
 var x=myTable.rows
   var xls = new ActiveXObject("Excel.Application")
   xls.visible = true
   xls.Workbooks.Add
   for (i = 0; i < x.length; i++)
   {
    var y = x[i].cells
    for (j = 0; j < y.length; j++)
   {
   xls.Cells( i+1, j+1).Value = y[j].innerText
  }
  }
 }
</script>


<table id="myTable" border="1">
<tr> <b><td>Name </td> <td>Age</td></b></tr>
<tr> <td>Shivani </td> <td>25</td> </tr>
<tr> <td>Naren </td> <td>28</td> </tr>
<tr> <td>Logs</td> <td>57</td> </tr>
</table>
4

1 回答 1

0

ActiveXObject是 Internet Explorer 唯一的方法。你不能做你想做的事情纯粹用 jquery/javascript 做(至少,不是微不足道的)

您要么必须使用可以生成 Excel 电子表格的服务器端应用程序,要么生成文件的 CSV,对其进行 base64 编码并使用 data: URI 方案将浏览器导航到 base64 数据触发您生成的内容的“下载”。

于 2012-08-29T14:01:50.550 回答