Javascript 将HTML表格导出到多个工作表中的excel
我不得不在几张工作表中导出一些表格到excel 我在这个主题上使用了Axel的代码: 一切似乎都很好,但出口并没有开始;浏览器控制台显示一个XML日志,我不知道如何解决这个问题 我认为这个问题与HTML表有关。有人知道这个问题吗 这是他的桌子:Javascript 将HTML表格导出到多个工作表中的excel,javascript,excel,export,Javascript,Excel,Export,我不得不在几张工作表中导出一些表格到excel 我在这个主题上使用了Axel的代码: 一切似乎都很好,但出口并没有开始;浏览器控制台显示一个XML日志,我不知道如何解决这个问题 我认为这个问题与HTML表有关。有人知道这个问题吗 这是他的桌子: <table id="tbl1"> <tr> <td>Name</td> <td>Birthday</td> <td>Amount</
<table id="tbl1">
<tr>
<td>Name</td>
<td>Birthday</td>
<td>Amount</td>
<td>Rebate (10%)</td>
</tr>
<tr>
<td>Smith</td>
<td data-type="DateTime" data-style="Date" data-value="1980-03-23">Mar 23 1980</td>
<td data-type="Number" data-style="Currency" data-value="1234.56">$ 1,234.56</td>
<td data-formula="=RC[-1]/10" data-type="Number" data-style="Currency">$ 123.45</td>
</tr>
<tr>
<td>Doe</td>
<td data-type="DateTime" data-style="Date" data-value="1978-11-05">Nov 05 1978</td>
<td data-type="Number" data-style="Currency" data-value="2345.67">$ 2,345.67</td>
<td data-formula="=RC[-1]/10" data-type="Number" data-style="Currency">$ 234.56</td>
</tr>
</table>
<hr>
<table id="tbl2">
<tr>
<td>Product</td>
<td>Price</td>
<td>Available</td>
<td>Count</td>
</tr>
<tr>
<td>Bred</td>
<td data-type="Number" data-style="Currency" data-value="1.89">$ 1.89</td>
<td data-type="Boolean" data-value="1">yes</td>
<td data-type="Number" data-value="123">123</td>
</tr>
<tr>
<td>Butter</td>
<td data-type="Number" data-style="Currency" data-value=".89">$ .89</td>
<td data-type="Boolean" data-value="0">no</td>
<td data-type="Number" data-value="0">0</td>
</tr>
</table>
<button onclick="tablesToExcel(['tbl1','tbl2'], ['Customers','Products'], 'TestBook.xls', 'Excel')">Export to Excel</button>
<button onclick="tablesToExcel(['tbl1','tbl2'], ['Customers','Products'], 'TestBook.xls', 'Calc')">Export to Calc</button>
名称
生日
数量
回扣(10%)
史密斯
1980年3月23日
$ 1,234.56
$ 123.45
雌鹿
1978年11月5日
$ 2,345.67
$ 234.56
产品
价格
可获得的
计数
培育
$ 1.89
对
123
黄油
$ .89
不
0
输出到Excel
导出到Calc
以下是我构建HTML表的代码摘录:
for(var j=0;j<nbData;j++){
if(j==0){
/*Gerer le premier affichage (Entete tableau)*/
affData += "<BR/><center><table id=\"tableToExport_"+i+"\" class=\"donnees\"><tr class=\"titre\"><td>"+xmlDoc.getElementsByTagName("data")[j].childNodes[0].firstChild.nodeValue+"</td><td></td></tr>"
}
var date = xmlDoc.getElementsByTagName("data")[j].childNodes[1].firstChild.nodeValue;
var val = xmlDoc.getElementsByTagName("data")[j].childNodes[2].firstChild.nodeValue;
affData += "<tr>";
affData += '<td data-type="DateTime" data-style="Date" data-value="'+date.substring(0,date.length-7)+'">'+date.substring(0,date.length-7)+'</td>';
//affData += '<td data-type="DateTime" data-style="Date" data-value="'+date.substring(0,date.length-16)+'">'+date.substring(0,date.length-16)+'</td>';
affData += '<td data-type="Number">'+val+"</td>";
affData += "</tr>";
if(j==nbData-1){
/*Gerer le dernier affichage (Fermer tableau)*/
affData += "</table></center><BR/>";
}
for(var j=0;jp请提供一个完整代码的示例。您的示例表与我的代码配合使用。只有DateTime的数据值必须采用data value=“2015-01-21T00:19:00”格式。请参阅感谢您的回答,我编辑了我的帖子。未经测试,但尝试:替换document.body.appendChild(链接)
和document.body.removeChild(link);
和对话框[“0”];appendChild(link);
和对话框[“0”];removeChild(link);
很抱歉耽搁了,这里可以用JSFiddle了:很好,谢谢:)你能解释一下区别吗?