如何将表格从网页导出到Excel。我希望导出包含所有的格式和颜色。
发布于 2011-04-03 00:05:57
这是一个php,但是你可以把它改成javascript:
<?php>
$colgroup = str_repeat("<col width=86>",5);
$data = "";
$time = date("M d, y g:ia");
$excel = "<html xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\">
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">
<html>
<head>
<meta http-equiv=\"Content-type\" content=\"text/html;charset=utf-8\" />
<style id=\"Classeur1_16681_Styles\">
.xl4566 {
color: red;
}
</style>
</head>
<body>
<div id=\"Classeur1_16681\" align=center x:publishsource=\"Excel\">
<table x:str border=0 cellpadding=0 cellspacing=0 style=\"border-collapse: collapse\">
<colgroup>$colgroup</colgroup>
<tr><td class=xl2216681><b>Col1</b></td><td class=xl2216681><b>Col2</b></td><td class=xl2216681 ><b>Col3</b></td><td class=xl2216681 ><b>Col4</b></td><td class=xl2216681 ><b>Col5</b></td></tr>
<tr><td class=xl4566>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr>
</table>
</div>
</body>
</html>";
$fname = "Export".time().".xls";
$file = fopen($fname,"w+");
fwrite($file,$excel);
fclose($file);
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="'.basename($fname).'"');
readfile($fname);
unlink($fname); ?>
发布于 2011-04-28 04:46:57
mozilla仍然支持64位URI。这允许您使用javascript动态组合二进制内容:
<a href="data:application/vnd.ms-excel<base64 encoded binary excel content here>"> download xls</a>
如果你的excel文件不是很漂亮(没有图表,公式,宏),你可以深入研究文件的格式和组成字节,然后用base64对它们进行编码并放入href中
发布于 2011-04-21 16:28:33
这实际上比您想象的要简单得多:“只是”将HTML表(即:表的HTML代码)复制到剪贴板中。Excel知道如何解码HTML表格;它甚至会尝试保留属性。
困难的部分是“将表复制到剪贴板中”,因为没有从JavaScript访问剪贴板的标准方法。请参阅这篇博客文章:Accessing the System Clipboard with JavaScript – A Holy Grail?
现在,您所需要的就是HTML格式的表。我建议使用jQuery和html()方法。
https://stackoverflow.com/questions/5524143
复制相似问题