2012-12-18 143 views
1

我试图用这个简单的功能,我发现在互联网上的HTML表导出到Excel:不能HTML表导出到Excel

$("#btnExport").click(function(e) { 
    window.open('data:application/vnd.ms-excel,' + $('#tabla_datos').html()); 
    e.preventDefault(); 
});​ 

它工作得好吧,但是当我添加一个属性到我的表中的任何元素,如rowspan或colspan,Excel不能正确导出。

这里的HTML:

<div id="tabla_datos"> 
<table> 
    <tr> 
     <th>Columna 1</th> 
     <th>Columna 2</th> 
     <th>Columna 3</th> 
    </tr> 
    <tr> 
     <td colspan='2'>Dato 1</td> 
     <td>Dato2</td> 
    </tr> 
    <tr> 
     <td>Dato 3</td> 
     <td>dato 4</td> 
     <td>Dato5</td> 
    </tr> 
</table> 
</div> 

<input type="button" id="btnExport" value=" Export Table data into Excel " />​ 

而这里的的jsfiddle:http://jsfiddle.net/WAR2v/

+0

我面对ASLO在打开文件时,它该文件可能有不同的格式规定,即“XSL”和本无网格线产生的Excel也消失了产生错误同样的问题....... –

回答

1

晚了,但你尝试编码您的URI一点?

此代码的工作对我来说:

$("#btnExport").click(function(e) { 
    window.open('data:application/vnd.ms-excel,' + encodeURIComponent($('#tabla_datos').html())); 
    e.preventDefault(); 
});