ExportToExcel: function () { var param = {}; var _this = this; param.beginDate = $("#beginDate").val(); param.endDate = $("#endDate").val(); param.departID = "";// $("#pageName").val(), $.ajax({ type: "post", contentType: "application/json", dataType: "json", url: 「」, data: JSON.stringify(param), success: function (message) { if (message.code == 0) { var title = ['aa', 'bb', 'cc', 'dd', 'ee'] _this.JSONToExcelConvertor(message.data, "aa", title, []); } }, error: function (e) { console.log(e); } }); }, JSONToExcelConvertor: function (JSONData, FileName, title, filter) { if (!JSONData) return; //轉化json爲object debugger; var arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData; var excel = "<table>"; //設置表頭 var row = "<tr>"; if (title) { //使用標題項 for (var i in title) { row += "<th align='center'>" + title[i] + '</th>'; } } else { //不使用標題項 for (var i in arrData[0]) { row += "<th align='center'>" + i + '</th>'; } } excel += row + "</tr>"; //設置數據 for (var i = 0; i < arrData.length; i++) { var row = "<tr>"; //判斷是否有過濾行 row += arrData[i]["SectionName"] == null ? "<td></td>" : '<td>' + arrData[i]["SectionName"] + '</td>'; row += arrData[i]["DepartName"] == null ? "<td></td>" : '<td>' + arrData[i]["DepartName"] + '</td>'; row += arrData[i]["VisitCount"] == null ? "<td></td>" : '<td>' + arrData[i]["VisitCount"] + '</td>'; row += arrData[i]["VisitCountTotal"] == null ? "<td></td>" : '<td>' + arrData[i]["VisitCountTotal"] + '</td>'; row += arrData[i]["VisitRate"] == null ? "<td></td>" : '<td>' + arrData[i]["VisitRate"] + '</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); }