如何跳过第一行并添加标题以下载csv文件
how to skip first row and add heading to download csv file
这是我的代码:
<script type="text/javascript">
functionExport(json_data, "User_Report", true);
function functionExport(JSONData, ReportTitle, ShowLabel) {
var arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData;
var CSV = '';
if (ShowLabel) {
var row = "";
for (var index in arrData[0]) {
row += index.toUpperCase() + ',';
}
row = row.slice(0, -1);
CSV += row + ''r'n';
}
//1st loop is to extract each row
for (var i = 0; i < arrData.length; i++) {
var row = "";
for (var index in arrData[i]) {
row += '"' + $('<div>').html(arrData[i][index]).text() + '",';
}
row.slice(0, row.length - 1);
CSV += row + ''r'n';
}
if (CSV == '') {
alert("Invalid data");
return;
}
//Generate a file name
var fileName = "Manage_";
fileName += ReportTitle.replace(/ /g, "_");
var link = document.createElement("a");
link.href = uri;
//set the visibility hidden so it will not effect on your web-layout
link.style = "visibility:hidden";
link.download = fileName + ".csv";
//this part will append the anchor tag and remove it after automatic click
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
</script>
我的建议是,不要重新发明轮子。CSV有很多问题。只需使用一个已经存在的库,papaparse。
以下是获取JSON对象并将其转换为CSV的函数:http://papaparse.com/docs#json-到csv
如果您想跳过第一行,只需将arrData.slice(1)
而不是arrData
传递给它
如果你想添加你自己的头,这就是第三个函数签名的作用。。。如下所示:Papa.unparse({fields:['a','b','c'],data:arrData})
您是否尝试过在第一个循环中将i初始化为1?此外,您的jQuery选择器应该是$('div')
for (var i = 1; i < arrData.length; i++) {
var row = "";
for (var index in arrData[i]) {
row += '"' + $('<div>').html(arrData[i][index]).text() + '",';
}
row.slice(0, row.length - 1);
CSV += row + ''r'n';
}
相关文章:
- 将行添加到具有固定标题的HTML表中
- 将超链接添加到“;标题“;标记文本
- 正在尝试将标题标记添加到mailto链接,正文中包含URL
- 如何在jQuery对话框标题栏中添加额外的按钮
- 为li元素添加标题
- 我该如何为video.js制作一个插件,在HTML标题中添加和删除三角形
- 根据值向表的每个 td 添加标题属性
- 在 php 标题标签中添加日期函数
- 如何将自定义标题添加到完整日历源
- 如何获取链接内容(innerHTML)并将其作为标题添加到其他链接
- 如何在鼠标悬停时动态向标题添加文本
- 如何在高图表中为标题添加边框
- 在引导手风琴上, 有没有办法在折叠时向标题添加固定的保存按钮.
- Internet Explorer 9 中的类型不匹配错误:将<标题>添加到内联 SVG
- Backbone.Marionette:将标题添加到集合视图
- 使用标题文本向多个标题添加类
- 为jquery FullCalendar的标题添加图标
- 向当前标题添加活动标题类
- 将文本/标题添加到缩略图滑块
- 如何使用 jquery 将元素的标题添加到类属性中