我希望在用户单击按钮后生成一个Excel表格。基本上,我想要做的就是这里所讨论的:
如何将HTML表格值传递到Excel工作表单元格 (Kalle H. Väravas答案)
但是当我点击按钮时,什么也不会发生。我正在使用Mozilla浏览器。我的代码需要启用ActiveXObject。我需要做一些额外的事情来完成它吗?
我为测试创建了这个fiddle。如果这有效,我将尝试我的真实代码。如果这对您有效,请也让我知道。谢谢
代码:
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>