Mind - pure front-end excle download

var fileName = 'downloaded file name'; 
var label = [{ 'labelName1': 'EXCLE head 1'}, { 'labelName2' : 'excle head 2'}, { 'labelName3' : 'excle head 3'}, { 'labelName4': 'excle head. 4'}];
var Data = [{ 'labelName1': 'EXCLE content 1'}, { 'labelName2' : 'excle SUMMARY 2'}, { 'labelName3' : 'excle content 3 '}, {' labelName4 ': ' excle content. 4 '}]

! = typeof Data Data ==' boject 'JOSN.parse (Data):? Data;
var EXCLE =' <table> ';
# set header
var row = '<tr align = "left ">'; // set the style table centered left
for (var I = 0; I <label.length; I ++) {
 for (var Key label in [I]) {
  Row + = '<td>' + label [i] [key] + '</ td>';
 }
}

excle = row + '</tr>';

//设置数据
for(var i = 0; i < data.length; i++){
  var rowData = '<tr align="left">';
  for(var y =0; y < label.length; y++){
    for(var k in label[y]){
      if(label[y].hasOwnProperty(k)){
        rowData += '<td style="vnd.ms-excel.numberformat:@">'+(data[i][k] === null ? "" : data[i][k]) + '</td>';//vnd.ms-excel.numberformat:@ 输出为文本
      } 
    }
  }
  EXCLE, rowData = + + '</ TR>';
}
EXCLE + = '</ Table>';

content file #excel
var excelFile = "<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'>";
excelFile += '<meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">';
excelFile += '<meta http-equiv="content-type" content="application/vnd.ms-excel';
excelFile += '; charset=UTF-8">';
excelFile += "<head>";
excelFile += "<!--[if gte mso 9]>";
excelFile += "<xml>";
excelFile += "<x:ExcelWorkbook>";
excelFile += "<x:ExcelWorksheets>";
excelFile += "<x:ExcelWorksheet>";
excelFile += "<x:Name>";
excelFile += "{worksheet}";
excelFile += "</x:Name>";
excelFile += "<x:WorksheetOptions>";
excelFile += "<x:DisplayGridlines/>";
excelFile += "</x:WorksheetOptions>";
excelFile += "</x:ExcelWorksheet>";
excelFile += "</x:ExcelWorksheets>";
excelFile += "</x:ExcelWorkbook>";
excelFile += "</xml>";
excelFile += "<![endif]-->";
excelFile += "</head>";
excelFile += "<body>";
excelFile += excel;
excelFile += "</body>";
excelFile += "</html>";
// to excle format file downloaded to the local
var uri = 'data:application/vnd.ms-excel;charset=utf-8,' + encodeURIComponent(excelFile);
var link = document.createElement("a");
link.href = uri;
link.style = "visibility:hidden";
link.download =fileName + ".xls";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);

Guess you like

Origin www.cnblogs.com/leonchan/p/11496099.html