现在各大浏览器基本都支持data协议,所以我们可以使用该协议去将网页中的table转化为excel下载下来
对html 进行base64编码处理
编码后的html内容增加前缀 data:application/vnd.ms-excel; ,即可使浏览器将其中的数据当做excel来处理,浏览器将提示下载或打开excel文件
代码小例:
function base64 (content) {
return window.btoa(unescape(encodeURIComponent(content)));
}
function exportOffice(tableID){
var type = 'doc';
var table = document.getElementById(tableID);
var excelContent = table.innerHTML;
var excelFile = "";
excelFile += "
";excelFile += "";
excelFile += "";
excelFile += "
";excelFile += excelContent;
excelFile += "";
excelFile += "";
var base64data = "base64," + base64(excelFile);
switch(type){
case 'excel':
window.open('data:application/vnd.ms-'+type+';'+base64data);
break;
case 'powerpoint':
window.open('data:application/vnd.ms-'+type+';'+base64data);
break;
}
}
名次 | 姓名 | 成绩 |
---|---|---|
1 | 小明 | 100 |
2 | 小红 | 95.5 |
οnclick="exportOffice('targetTable')" />