前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >前端导出csv格式时产生中文乱码和异步A标签点击下载解决方案

前端导出csv格式时产生中文乱码和异步A标签点击下载解决方案

作者头像
美团骑手
发布2021-01-18 11:13:57
1.4K0
发布2021-01-18 11:13:57
举报
文章被收录于专栏:技术进阶技术进阶

导出csv格式时其他都很正常,只有中文容易产生乱码,后来找到了添加BOM头的解决方案:

代码语言:javascript
复制
$('#list_csv_export').click(function () {
            var url = $(this).attr('data-url');
            var layer = layui.layer;
            layer.msg('正在下载订单明细,请耐心等待', {icon: 6, time:1500});
            layer.load(2);
            $.get(url, function (data) {
                if (undefined == data.retCode) {
                    let a = document.createElement('a');
                    content="ufeff"+data;
                    let url = window.URL.createObjectURL(new Blob([content],{type:'text/plain,charset=utf-8'}));
                    let filename = '订单明细.csv';
                    a.href = url;
                    a.download = filename;
                    a.click();
                    window.URL.revokeObjectURL(url);
                    layer.msg('导出成功', {icon: 6, time:1500});
                    layer.closeAll('loading');
                } else {
                    layer.msg('导出失败,请刷新页面后重试', {icon: 5, time:1500});
                }
            });
        });

BOM(Byte Order Mark),字节顺序标记,出现在文本文件头部,Unicode编码标准中用于标识文件是采用哪种格式的编码。 在字符串头部加上"ufeff"表示它是utf-8格式编码的,在用编辑器打开时就不会产生乱码了

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-02-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档