例如,如果您点击链接:
data:application/octet-stream;base64,SGVsbG8=
浏览器将提示您下载一个文件,该文件由超链接本身中作为base64保存的数据组成.有没有办法在标记中建议默认名称?如果没有,是否有JavaScript解决方案?
我正在使用jQuery Table to CSV Plugin.我已经更改了弹出窗口,以便它告诉浏览器下载CSV文件.
它是:
function popup(data) {
var generator = window.open('', 'csv', 'height=400,width=600');
generator.document.write('<html><head><title>CSV</title>');
generator.document.write('</head><body >');
generator.document.write('<textArea cols=70 rows=15 wrap="off" >');
generator.document.write(data);
generator.document.write('</textArea>');
generator.document.write('</body></html>');
generator.document.close();
return true;
}
Run Code Online (Sandbox Code Playgroud)
我已将其更改为:
function popup(data) {
window.location='data:text/csv;charset=utf8,' + encodeURIComponent(data);
return true;
}
Run Code Online (Sandbox Code Playgroud)
它在大多数情况下都有效.它仍然需要您找到您的电子表格软件,并创建自己的文件名...因为它会创建一个奇怪的文件名(例如:14YuskG_.csv.part).
关于如何改进这个的任何建议?