最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

js实现动态导出字符串方法

来源:动视网 责编:小采 时间:2020-11-27 19:58:50
文档

js实现动态导出字符串方法

js实现动态导出字符串方法:本文主要和大家分享js实现动态导出字符串方法,希望能帮助到大家。示例1: 利用blob动态导出字符串到excel:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"
推荐度:
导读js实现动态导出字符串方法:本文主要和大家分享js实现动态导出字符串方法,希望能帮助到大家。示例1: 利用blob动态导出字符串到excel:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"


本文主要和大家分享js实现动态导出字符串方法,希望能帮助到大家。

示例1: 利用blob动态导出字符串到excel:

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style media="screen">
.tableA {
border-collapse: collapse;
}

.tableA .title th {
height: 50px;
font-size: 24px;
font-family: '微软雅黑';
font-weight: 700;
}

.tableA tr th {
border: 1px #000 solid;
height: 40px;
background: #efefef;
}

.tableA tr td {
padding: 0 40px;
border: 1px #000 solid;
height: 40px;
text-align: center;
}

.tableA .footer td {
font-size: 20px;
font-weight: 700;
}
</style>
</head>

<body>
<table bordercolor="black" class="tableA">
<tr class="title">
<th colspan="4">学生信息</th>
</tr>
<tr>
<th>名字</th>
<th>性别</th>
<th>年龄</th>
<th>班级</th>
</tr>
<tr>
<td>小明</td>
<td>男</td>
<td>19</td>
<td>1班</td>
</tr>
<tr>
<td>小黄</td>
<td>男</td>
<td>20</td>
<td>2班</td>
</tr>
<tr>
<td>老王</td>
<td>男</td>
<td>29</td>
<td>3班</td>
</tr>
<tr class="footer">
<td colspan="4">总人数:3人</td>
</tr>
</table>

<script>
var oHtml = document.getElementsByClassName('tableA')[0].outerHTML;
var excelHtml = `
 <html>
 <head>
 <meta charset='utf-8' />
 <style>
 .tableA {
 border-collapse: collapse;
 }
 .tableA .title th{
 height: 50px;
 font-size: 24px;
 font-family: '微软雅黑';
 font-weight: 700;
 }
 .tableA tr th {
 border: 1px #000 solid;
 height: 40px;
 background: #efefef;
 }
 .tableA tr td {
 padding: 0 40px;
 border: 1px #000 solid;
 height: 40px;
 text-align: center;
 }
 .tableA .footer td {
 font-size: 20px;
 font-weight: 700;
 }
 </style>
 </head>
 <body>
 ${oHtml}
 </body>
 </html>
 `;
var debug = { hello: "world" };
// var blob = new Blob([JSON.stringify(debug, null, 2)],
// { type: 'application/json' });
var excelBlob = new Blob([excelHtml], { type: 'application/vnd.ms-excel' })


// 创建一个a标签
var oA = document.createElement('a');
// 利用URL.createObjectURL()方法为a元素生成blob URL
oA.href = URL.createObjectURL(excelBlob);
// 给文件命名
oA.download = '学生名单.xls';
// 模拟点击
oA.click();
</script>
</body>

</html>

示例2:

<script>
var content1 = "hhh1";
var content2 = "23332";
var blob = new Blob([content1,content2],{type:"text/plain"});
var url = URL.createObjectURL(blob);
var aEle = document.createElement("a");
var btn = document.querySelector("button");
btn.onclick = function (param) {
aEle.href = url;
aEle.download = "测试下载数据";
aEle.click(); // Dom.click() 模拟一次该dom的点击事件
}
</script>

注意: DOM.click(); 是模拟一次dom 的点击事件。

文档

js实现动态导出字符串方法

js实现动态导出字符串方法:本文主要和大家分享js实现动态导出字符串方法,希望能帮助到大家。示例1: 利用blob动态导出字符串到excel:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"
推荐度:
标签: 方法 动态 实现
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top