zoukankan      html  css  js  c++  java
  • JS导出JSON到Excel表格

    <a href="javascript:;" id="export">导出</a>
    <script>
    
        $("#export").click(function () {
            var Title = [{ "value": "姓名" }, { "value": "课题组" }, { "value": "手机" }, { "value": "手机短号" }, { "value": "申请人邮箱" }, { "value": "申请培训时间" }, { "value": "动物实验资格证号" }, { "value": "状态" }];
            var Value = [{ "Fullnames": "扯淡", "Fullname": "扯淡", "Mobile": "18888888888", "Mobilecornet": "021-88888888", "Email": "8888@qq.com", "TimeAllocation": "9月份第四周", "QualificationCode": "9876543210", "Status": "已审核" }, { "Fullnames": "扯淡", "Fullname": "扯淡1", "Mobile": "18999999999", "Mobilecornet": "021-99999999", "Email": "9999@qq.com", "TimeAllocation": "3月份第四周", "QualificationCode": "0123456789", "Status": "未审核" }];
            var data = { "title": Title, "data": Value };
            JSONToExcelConvertor("培训申请管理", data.data, data.title);
        })
    
        function JSONToExcelConvertor(FileName, JSONData, ShowLabel) {
    
            //先转化json  
            var arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData;
    
            var excel = '<table>';
    
            //设置表头  
            var row = "<tr>";
            for (var i = 0, l = ShowLabel.length; i < l; i++) {
                row += "<td style="color:red">" + ShowLabel[i].value + '</td>';
            }
    
            //换行  
            excel += row + "</tr>";
    
            //设置数据  
            for (var i = 0; i < arrData.length; i++) {
                var row = "<tr>";
    
                for (var index in arrData[i]) {
                    var value = arrData[i][index] === "." ? "" : arrData[i][index];
                    row += '<td>' + value + '</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);
        }
    
    </script>

     原文:https://blog.csdn.net/educast/article/details/52775559

  • 相关阅读:
    OAF[1]开发环境的配置
    XAF如何开始学习XAF
    XPO开发指南简要
    XAF 如何使用AlertControl?
    企业邮箱及邮件服务器架设
    Excel的SUM函数9种公式设置
    XAF 如何显示非持久类数据列表
    分上下半月统计 SQL
    XAF中实现类型转换(ValueConverter)
    在XAF中如何自定义用户、角色、权限、资源、事件(复杂权限)
  • 原文地址:https://www.cnblogs.com/zpblogs/p/11466797.html
Copyright © 2011-2022 走看看