有了新的需求 所以就了解下怎么用js 直接导出excel文档。
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>
</head>
<body>
<p style="font-size: 20px;color: red;">使用a标签方式将json导出csv文件</p>
<button onclick="tableToExcel()">导出</button>
</body>
</html>
标题js代码
<script>
window.onload = function(){
tableToExcel = function (){
//要导出的json数据
var jsonData = [
{
name:'路人甲',
phone:'123456789',
email:'[email protected]'
},
{
name:'炮灰乙',
phone:'123456789',
email:'[email protected]'
},
{
name:'土匪丙',
phone:'123456789',
email:'[email protected]'
},
{
name:'流氓丁',
phone:'123456789',
email:'[email protected]'
},
];
//列标题,逗号隔开,每一个逗号就是隔开一个单元格
var str = "姓名,电话,邮箱\n";
//增加\t为了不让表格显示科学计数法或者其他格式
for(var i = 0 ; i < jsonData.length ; i++ ){
for(var item in jsonData[i]){
str+=jsonData[i][item]+"\t,";
}
str+='\n';
}
//encodeURIComponent解决中文乱码
var uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
//通过创建a标签实现
var link = document.createElement("a");
link.href = uri;
//对下载的文件命名
link.download = "json数据表.csv";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
};
}
</script>