js实现导出

简介: js实现导出
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src="js/jquery.min.js"></script>
    <title></title>
  </head>
  <body>
    <button id="" type="button" class="importBtn">
      <i></i> 导出</button>
    <script type="text/javascript">
      let data = [{
          "name": "张三一",
          "gender": "女",
          "age": "22",
          "record": "初中及以下",
          "employment": "长期派遣",
          "level": "一档2级",
          "item": "河南铁路",
          "status": "在职"
        },
        {
          "name": "张三",
          "gender": "男",
          "age": "18",
          "record": "高中",
          "employment": "学员",
          "level": "一档2级",
          "item": "河南铁路",
          "status": "在职"
        },
        {
          "name": "王五",
          "gender": "男",
          "age": "22",
          "record": "大学",
          "employment": "长期派遣",
          "level": "一档1级",
          "item": "电路",
          "status": "在职"
        }
      ]
      $(".importBtn").on('click', function() {
        var tableData = [];
        console.log(data);
        tableData = data;
        downLoadExcel(tableData, '工资社保管理')
      })
      function downLoadExcel(data, fileName) {
        //定义表头
        let str = '姓名,性别,年龄,学历,用工形式,档级,所在项目,在职状态,\n';
        //增加\t为了不让表格显示科学计数法或者其他格式
        for (let i = 0; i < data.length; i++) {
          for (let item in data[i]) {
            str += `${data[i][item] + '\t'},`;
          }
          str += '\n';
        }
        //encodeURIComponent解决中文乱码
        let uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
        //通过创建a标签实现
        let link_data = document.createElement("a");
        link_data.href = uri;
        //对下载的文件命名
        link_data.download = `${fileName || '表格数据'}.xls`;
        document.body.appendChild(link_data);
        link_data.click();
        document.body.removeChild(link_data);
      }
    </script>
  </body>
</html>

直接复制粘贴即可

相关文章
|
7月前
|
JavaScript
如何使用原生js实现导出的效果
如何使用原生js实现导出的效果
|
6月前
|
前端开发 JavaScript 数据处理
前端新手指南:如何解决JavaScript导出CSV文件不完整的问题
【6月更文挑战第4天】在JavaScript中处理CSV文件时,需要特别注意一些特殊字符,例如逗号、双引号、换行符等。这些字符可能会影响CSV文件的解析,导致数据错乱。
239 0
|
6月前
|
JavaScript 前端开发
JS导出excel功能
JS导出excel功能
|
7月前
|
JavaScript
细讲Node.js模块化,以及 CommonJS 标准语法导出和导入,详细简单易懂!
细讲Node.js模块化,以及 CommonJS 标准语法导出和导入,详细简单易懂!
|
7月前
|
JSON JavaScript 前端开发
使用JavaScript和XLSX.js将数据导出为Excel文件
使用JavaScript和XLSX.js将数据导出为Excel文件
463 0
|
7月前
|
存储 JavaScript 前端开发
JavaScript中表格文件导出功能详解
JavaScript中表格文件导出功能详解
|
7月前
|
JavaScript
点击导出所选数据(原生js)
点击导出所选数据(原生js)
45 0
|
7月前
|
JavaScript
JS导出表格
JS导出表格
|
7月前
|
JavaScript 前端开发
原生JavaScript JS导出blob后台文件流xlsx、xls文件自动下载(且规避乱码),解决导出Excel文件里面有[object Object]。
原生JavaScript JS导出blob后台文件流xlsx、xls文件自动下载(且规避乱码),解决导出Excel文件里面有[object Object]。
|
JavaScript 前端开发 Java
前端js实现打印(导出)excel表格
前端js实现打印(导出)excel表格
128 0