javascript 把页面表格下载成excel

// 把页面的表格转化为excel下载下来
function tablesToExcel(table, name, filename) {

    var uri = "data:application/vnd.ms-excel;base64,"
        ,
        template = ""
        , body = ""
        , tablevar = "{table"
        , tablevarend = "}
" , bodyend = "" , worksheet = "" , worksheetend = "" , 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 let two table arrange left and right */ if (tables.length > 1) { tabletemplate += "" + tablevar + i + tablevarend + ""; } else { tabletemplate += tablevar + i + tablevarend; } } /* * add and
to Conbime left_tab and right_tab to one table */ if (tables.length > 1) { tabletemplate = "" + tabletemplate + "
"; } 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)