使用javascript将文件下载为a.csv文件 [英] Using javascript to download file as a.csv file
本文介绍了使用javascript将文件下载为a.csv文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好我尝试将文件导出为.csv文件,以便当用户点击下载按钮时,浏览器会自动将文件下载为.csv。
我也想为要导出的.csv文件设置一个名称
Hi I am trying to export a file as .csv file, so that when the user clicks on the download button, the browser would automatically download the file as .csv. I also want to be able to set a name for the .csv file to be exported
我使用javascript来执行此操作
I am using javascript to do this
代码如下:
function ConvertToCSV(objArray) {
var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;
var str = '';
for (var i = 0; i < array.length; i++) {
var line = '';
for (var index in array[i]) {
if (line != '') line += ','
line += array[i][index];
}
str += line + '\r\n';
}
return str;
}
// Example
$(document).ready(function () {
// Create Object
var items = [
{ "name": "Item 1", "color": "Green", "size": "X-Large" },
{ "name": "Item 2", "color": "Green", "size": "X-Large" },
{ "name": "Item 3", "color": "Green", "size": "X-Large" }];
// Convert Object to JSON
var jsonObject = JSON.stringify(items);
// Display JSON
$('#json').text(jsonObject);
// Convert JSON to CSV & Display CSV
$('#csv').text(ConvertToCSV(jsonObject));
$("#download").click(function() {
alert("2");
var csv = ConvertToCSV(jsonObject);
window.open("data:text/csv;charset=utf-8," + escape(csv))
///////
});
});
请指教这
我的老板在这个问题上呼吸我的脖子
Please advise on this My Boss is breathing down my neck on this issue
请在现代浏览器中帮助
推荐答案
下载
,而不是使用
window.open("data:text/csv;charset=utf-8," + escape(csv))
创建下载链接:
<a href="data:text/csv;charset=utf-8,'+escape(csv)+'" download="filename.csv">download</a>
另一个解决方案是使用php
another solution is to use php
EDIT
我不使用jQuery,但您需要编辑您的代码以添加下载链接
i don't use jQuery, but you need to edit your code to add the download link with something like that in your function.
var csv=ConvertToCSV(jsonObject),
a=document.createElement('a');
a.textContent='download';
a.download="myFileName.csv";
a.href='data:text/csv;charset=utf-8,'+escape(csv);
document.body.appendChild(a);
这篇关于使用javascript将文件下载为a.csv文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文