首頁 web前端 js教程 實例剖析js如何匯出報表

實例剖析js如何匯出報表

Apr 02, 2018 pm 04:35 PM
javascript

项目中签到模块需要导出每天的签到数据,一开始用poi在后台导出,window下运行没什么问题,但是把项目部署到linux环境上,提示导出路径不存在,思索良久也没有找到解决的办法,最后只能在前端使用js导出表格。本篇文章给大家分享的是实例剖析js如何导出报表的操作详解,内容挺不错的,希望可以帮助到有需要的朋友

注意:js导出表格是利用浏览器自带的下载功能去实现的,所以不需要定义下载路径,很好用,唯一的缺点就是,表格样式不知道怎么去定义。

一:导入jquery

<script src="https://code.jquery.com/jquery-3.0.0.min.js"></script>
登入後複製


二:页面准备一个table和一个导出的按钮


<table id="mytab" border="1">  
<tr>  
<th>Month</th>  
<th>Savings</th>  
</tr>  
<tr>  
<td>January</td>  
<td>$100</td>  
</tr>  
</table>  
 <input value="开始导出" type="button" id="export" onclick="method5(&#39;mytab&#39;)">   //参数为table的id
登入後複製


三:js代码

<script type="text/javascript">  
//打印表格
var idTmr;  
function getExplorer() {  
var explorer = window.navigator.userAgent;  
//ie  
if (explorer.indexOf("MSIE") >= 0) {  
return &#39;ie&#39;;  
}  
//firefox  
else if (explorer.indexOf("Firefox") >= 0) {  
return &#39;Firefox&#39;;  
}  
//Chrome  
else if (explorer.indexOf("Chrome") >= 0) {  
return &#39;Chrome&#39;;  
}  
//Opera  
else if (explorer.indexOf("Opera") >= 0) {  
return &#39;Opera&#39;;  
}  
//Safari  
else if (explorer.indexOf("Safari") >= 0) {  
return &#39;Safari&#39;;  
}  
}  
function method5(tableid) {  
if (getExplorer() == &#39;ie&#39;) {  
var curTbl = document.getElementById(tableid);  
var oXL = new ActiveXObject("Excel.Application");  
var oWB = oXL.Workbooks.Add();  
var xlsheet = oWB.Worksheets(1);  
var sel = document.body.createTextRange();  
sel.moveToElementText(curTbl);  
sel.select();  
sel.execCommand("Copy");  
xlsheet.Paste();  
oXL.Visible = true;  
try {  
var fname = oXL.Application.GetSaveAsFilename("Excel.xls",  
"Excel Spreadsheets (*.xls), *.xls");  
} catch (e) {  
print("Nested catch caught " + e);  
} finally {  
oWB.SaveAs(fname);  
oWB.Close(savechanges = false);  
oXL.Quit();  
oXL = null;  
idTmr = window.setInterval("Cleanup();", 1);  
}  
} else {  
tableToExcel(tableid)  
}  
}  
function Cleanup() {  
window.clearInterval(idTmr);  
CollectGarbage();  
}  
var tableToExcel = (function() {  
var uri = &#39;data:application/vnd.ms-excel;base64,&#39;, template = &#39;<html><head><meta charset="UTF-8"></head><body><table  border="1">{table}</table></body></html>&#39;, base64 = function(  
s) {  
return window.btoa(unescape(encodeURIComponent(s)))  
}, format = function(s, c) {  
return s.replace(/{(\w+)}/g, function(m, p) {  
return c[p];  
})  
}  
return function(table, name) {  
if (!table.nodeType)  
table = document.getElementById(table)  
var ctx = {  
worksheet : name || &#39;Worksheet&#39;,  
table : table.innerHTML  
}  
window.location.href = uri + base64(format(template, ctx))  
}  
})()  
</script>
登入後複製

坚持总结工作中遇到的技术问题,坚持记录工作中所所思所见,欢迎大家一起探讨交流。

以上是實例剖析js如何匯出報表的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

抖音私訊表情包怎麼弄到微信?私訊表情包怎麼匯出? 抖音私訊表情包怎麼弄到微信?私訊表情包怎麼匯出? Mar 21, 2024 pm 10:01 PM

隨著社群媒體的不斷興起,抖音作為一款備受歡迎的短影片平台,吸引了大量用戶的青睞。在抖音上,使用者不僅可以展現自己的生活,還能與其他使用者互動。在這種互動中,表情包逐漸成為使用者表達情感的重要方式。一、抖音私訊表情包怎麼弄到微信?首先,要在抖音平台上取得私訊表情包,需要登入抖音帳號,然後瀏覽並選擇喜歡的表情包,可以選擇傳送給好友或自己收藏。在抖音收到表情包後,可以透過私訊介面長按該表情包,然後選擇「加入表情」功能。這樣,就可以將這個表情包加入抖音的表情庫中。 3.接下來,我們需要將抖音表情庫中的

如何使用WebSocket和JavaScript實現線上語音辨識系統 如何使用WebSocket和JavaScript實現線上語音辨識系統 Dec 17, 2023 pm 02:54 PM

如何使用WebSocket和JavaScript實現線上語音辨識系統引言:隨著科技的不斷發展,語音辨識技術已成為了人工智慧領域的重要組成部分。而基於WebSocket和JavaScript實現的線上語音辨識系統,具備了低延遲、即時性和跨平台的特點,成為了廣泛應用的解決方案。本文將介紹如何使用WebSocket和JavaScript來實現線上語音辨識系

在mac上匯出QQ音樂下載的歌曲為mp3只需要兩步 在mac上匯出QQ音樂下載的歌曲為mp3只需要兩步 Jan 05, 2024 pm 07:10 PM

聽歌是一件很常見的事情,相信無論在哪裡,很多朋友都會做。你平常用來聽歌的軟體是什麼呢?是不是跟我一樣使用QQ音樂呢?我目前就是用QQ音樂來聽歌,而且不僅可以在手機上使用,還可以在Mac電腦上使用。除了在線上聽歌,我們還可以把QQ音樂中喜歡的歌曲下載到電腦上。不過,Mac版QQ音樂下載的歌曲不是我們需要的格式,我們需要的是MP3格式的音樂,那麼如何將Mac版QQ音樂下載的歌曲匯出為MP3格式呢?如何將在Mac版QQ音樂下載的歌曲匯出並轉換為MP3格式?如果您想將Mac版QQ音樂下載的歌曲匯出並轉換為MP

xmind文件怎麼匯出為pdf文件 xmind文件怎麼匯出為pdf文件 Mar 20, 2024 am 10:30 AM

xmind是一款非常實用的心智圖軟體,它是利用人們的思維和靈感製作出來的導圖形式,我們在製作完xmind檔案通常會把它轉換成pdf檔格式,以方便大家傳播使用,那麼xmind檔怎麼匯出為pdf檔呢?以下就是具體操作步驟可以供大家參考。 1.首先我們來示範如何匯出心智圖為PDF文件。選擇【檔案】-【匯出】功能按鈕。 2.在新出現的介面中選擇【PDF文件】並點選【下一步】按鈕。 3.在匯出介面選擇設定:紙張尺寸、方向、解析度和文件儲存位置。完成設定後點選【完成】按鈕。 4.如果點選【完成】按鈕後

WebSocket與JavaScript:實現即時監控系統的關鍵技術 WebSocket與JavaScript:實現即時監控系統的關鍵技術 Dec 17, 2023 pm 05:30 PM

WebSocket與JavaScript:實現即時監控系統的關鍵技術引言:隨著互聯網技術的快速發展,即時監控系統在各個領域中得到了廣泛的應用。而實現即時監控的關鍵技術之一就是WebSocket與JavaScript的結合使用。本文將介紹WebSocket與JavaScript在即時監控系統中的應用,並給出程式碼範例,詳細解釋其實作原理。一、WebSocket技

酷家樂怎麼匯出剖面圖_酷家樂匯出剖面圖方法 酷家樂怎麼匯出剖面圖_酷家樂匯出剖面圖方法 Apr 02, 2024 pm 06:01 PM

1.先在酷家樂中開啟要處理的設計方案,點選上面的圖面清單下的施工圖。 2、然後點選選擇全彩平面圖。 3.接著在圖紙中把不要的家具隱藏,只留下需要導出的家具。 4、最後點選下載即可。

如何利用JavaScript和WebSocket實現即時線上點餐系統 如何利用JavaScript和WebSocket實現即時線上點餐系統 Dec 17, 2023 pm 12:09 PM

如何利用JavaScript和WebSocket實現即時線上點餐系統介紹:隨著網路的普及和技術的進步,越來越多的餐廳開始提供線上點餐服務。為了實現即時線上點餐系統,我們可以利用JavaScript和WebSocket技術。 WebSocket是一種基於TCP協定的全雙工通訊協議,可實現客戶端與伺服器的即時雙向通訊。在即時線上點餐系統中,當使用者選擇菜餚並下訂單

如何使用WebSocket和JavaScript實現線上預約系統 如何使用WebSocket和JavaScript實現線上預約系統 Dec 17, 2023 am 09:39 AM

如何使用WebSocket和JavaScript實現線上預約系統在當今數位化的時代,越來越多的業務和服務都需要提供線上預約功能。而實現一個高效、即時的線上預約系統是至關重要的。本文將介紹如何使用WebSocket和JavaScript來實作一個線上預約系統,並提供具體的程式碼範例。一、什麼是WebSocketWebSocket是一種在單一TCP連線上進行全雙工

See all articles