// 把页面的表格转化为excel下载下来
function tablesToExcel(table, name, filename) {
var uri = "data:application/vnd.ms-excel;base64,"
,
template = "<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\"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets>"
, templateend = "</x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head>"
, body = "<body>"
, tablevar = "<table>{table"
, tablevarend = "}</table>"
, bodyend = "</body></html>"
, worksheet = "<x:ExcelWorksheet><x:Name>"
, worksheetend = "</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet>"
, worksheetvar = "{worksheet"
, worksheetvarend = "}"
, base64 = function (s) {
return window.btoa(unescape(encodeURIComponent(s)));
}
, format = function (s, c) {
return s.replace(/{(\w+)}/g, function (m, p) {
return c[p];
});
}
, wstemplate = ""
, tabletemplate = "";
var tables = table;
for (var i = 0; i < tables.length; ++i) {
wstemplate += worksheet + worksheetvar + i + worksheetvarend + worksheetend;
/*
* addd <td></td> let two table arrange left and right
*/
if (tables.length > 1) {
tabletemplate += "<td>" + tablevar + i + tablevarend + "</td>";
} else {
tabletemplate += tablevar + i + tablevarend;
}
}
/*
* add <table><tr> and </table></tr> to Conbime left_tab and right_tab to one table
*/
if (tables.length > 1) {
tabletemplate = "<table><tr>" + tabletemplate + "</table></tr>";
}
var allTemplate = template + wstemplate + templateend;
var allWorksheet = body + tabletemplate + bodyend;
var allOfIt = allTemplate + allWorksheet;
var ctx = {};
for (var j = 0; j < tables.length; ++j) {
ctx["worksheet" + j] = name[j];
}
for (var k = 0; k < tables.length; ++k) {
var exceltable;
if (!tables[k].nodeType) exceltable = document.getElementById(tables[k]);
ctx["table" + k] = exceltable.innerHTML;
}
window.location.href = uri + base64(format(allOfIt, ctx));
}
javascript 把页面表格下载成excel
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 拍照传图识字----三秒种把看到的图片转换成可编辑的电子文档!!! 做会计的最容易用到这一点,一般的识别软件会把纸...
- 最近项目中有一个需求,就是把app内产生的有些数据编辑成excel表格进行导出或者分享给他人,我们都知道这些数据我...
- 示例一 在vue单页面组件中template中写法示例 api.js中写法示例 在script标签中写法示例 示例...
- 第一组:姚成栋 导出EXCEL合并单元格 主要用到的是NPOI合并单元格—CellRangeAddress。 简...