lag*_*lex 6 csv newline data-uri
我有一个 CSV 数据
column1,column2,column3
data1,data2,data3
data1,data2,data3
Run Code Online (Sandbox Code Playgroud)
我把它作为一个 Jade 变量,它和 HTML 中的内插字符串一样好,我让它可以通过a数据 URI 格式的链接下载
column1,column2,column3
data1,data2,data3
data1,data2,data3
Run Code Online (Sandbox Code Playgroud)
var link = document.getElementById('link');
var data = 'column1,column2,column3\n\rdata1,data2,data3\n\rdata1,data2,data3';
link.href = 'data:text/csv,' + data;Run Code Online (Sandbox Code Playgroud)
我已经使用 Javascript 在此处插入数据以进行演示,但实际上我在服务器端使用 Jade :(我认为这并没有什么不同......)
a(href="data:text/csv,#{data.replace(/[\r\n]/, '\r\n')}" download="data.csv") Download
Run Code Online (Sandbox Code Playgroud)
问题是换行符不起作用。当我下载文件时,它没有换行符。
事实上维基说
在 Mozilla Firefox 5、Google Chrome 17 和 IE 9(2011 年 6 月发布)中,编码数据不得包含换行符。
这是另一个问题,如果我没有误解,确实表明这是可能的。
是否真的不可能为数据 URI 格式的 CSV 下载换行,或者有没有我可能错过的方法?
很久以前就问了一个好问题:)我今天也遇到了这个问题。对我来说,如果我对 CSV 进行 URL 编码,它就可以工作。这样换行符“\n”和/或“\r”就变成“%0A”和“%0D”
var link = document.getElementById('link');
var data = 'column1,column2,column3\n\rdata1,data2,data3\n\rdata1,data2,data3';
data = encodeURI(data);
link.href = 'data:text/csv,' + data;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
718 次 |
| 最近记录: |