//Excel下载
//dt为 C#类型 DataTable 经过AjaxPro2 转换的类型,其他类型自行修改
//str += "table{ border:1px solid black}"; solid 后面不能跟#FFF这种形式
function dataExcel(dt, title) {
var filename = title + '.xls';
// var value = "<table>" + tabledate.innerHTML + "</table>";
var value = DTtoStr(dt, title);
if (navigator.userAgent.indexOf("MSIE") > 0) {
document.querySelector('#aLink').setAttribute('onclick', "IEDownload('" + filename + "','" + value + "');return false;");
//document.querySelector('#aLink').setAttribute("onclick", "IEDownload(" + blob + ",'" + filename + "');return false;");
}
else {
document.querySelector('#aLink').download = filename;
document.querySelector('#aLink').href = "data:text/xls;charset=utf-8," + value;
}
}
function IEDownload(filename, value) {
var oWin = window.top.open("about:blank", "_blank");
oWin.document.write(value);
oWin.document.close();
oWin.document.execCommand('SaveAs', true, filename);
oWin.close();
//var blob = new Blob(["\uFEFF" + value], {
// type: "text/xls;charset=utf-8;"
//});
//navigator.msSaveBlob(blob, filename);
}
function DTtoStr(dt, title) {
var str = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";
str += "<head>";
str += "<style type=\"text/css\">";
str += "table{ border:1px solid black}";
str += "td{ border:1px solid black; text-align:center;}";
str += "</style>";
str += "</head>";
str += "<body>";
str += "<table cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse:collapse\" >";
var columnNames = [];
str += "<tr><td colspan='" + (dt.Columns.length + 1) + "' align='center' >" + title + "</td></tr>";
str += "<tr>";
str += "<td>序号</td>";
for (var i = 0; i < dt.Columns.length; i++) {
str += "<td>" + dt.Columns[i].Name + "</td>";
columnNames.push(dt.Columns[i].Name);
}
str += "</tr>";
for (var i = 0; i < dt.Rows.length; i++) {
str += "<tr>";
str += "<td>" + (i + 1) + "</td>";
for (var p = 0; p < columnNames.length; p++) {
str += "<td>" + dt.Rows[i][columnNames[p]] + "</td>";
}
str += "</tr>";
}
str += "</table></body></html>";
return str;
}
js导出excel
最新推荐文章于 2024-07-12 20:48:19 发布