zoukankan      html  css  js  c++  java
  • 31.json导出excel

    function JSONToExcel(JSONData, FileName) {  
        
        //先转化json  
        var arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData;  
           
        var $excel = '<table>';    
        //设置表头  
        
        //设置表头  
        var $row = "<tr>";
        let l = arrData.length;
        if(l==0){
            return
        }
        for(var i in JSONData[0]){
            if(i=="key")
            continue
            $row += "<td>" + BankAttrCodeToString[i] + '</td>'; 
        }
          
        //换行  
        $excel += $row + "</tr>";   
      
           //设置数据  
        for (var i = 0; i < arrData.length; i++) {  
            var row = "<tr>";  
              
            for (var index in arrData[i]) {  
                if(index=="key")
                continue
                let t = arrData[i][index]
                if(index=="date"){
                    t = new Date(t).toLocaleString()
                }
                if(index=="createTime"){
                    t = new Date(t).toLocaleString()
                }
                if(index=="isBlack"){
                    t = t?"是":"否"
                }
                if(index=="type"){
                    t = GetCashType[t]
                }
                  if(index=="status"){
                      t = $LGetCashStatus[t]
                  }
                row += '<td>' + t + '</td>';  
            }  
              
            $excel += row + "</tr>";  
        }  
            
          $excel += "</table>";  
        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>";  
      
                  
        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);  
    }  
    注:JSONData格式[{key:value},{key:value},{key:value},{key:value}]
  • 相关阅读:
    《基于CMMI的软件工程及实训指导》第一章读书心得
    第一个微信小项目
    自己设计大学排名-数据库实践
    第一次爬虫和测试
    预测球队比赛成绩
    自己的第一个网页
    科学计算和可视化
    第一个微信小项目
    数据库实际
    第一个爬虫和测试
  • 原文地址:https://www.cnblogs.com/famLiu/p/7325895.html
Copyright © 2011-2022 走看看