首页 > 解决方案 > 在 Javascript 中将标头传递给 CSV 的更好方法

问题描述

我正在尝试通过 Javascript 中的 GRID 读取数据并将其转换为 CSV 文件。CSV 将重复的标题和数据拉到各处。我对 Javascript 很陌生。如果有人可以帮助我,那就太好了。

DATA -----------
defaultSortAsc: true
field: "ECCKT_STRIPPED_NAME__r.Name"
focusable: true
formatter: ƒ eccktStrippedNameFormatter(row, cell, value, columnDef, 
dataContext)
headerCssClass: null
helpText: ""
id: "ECCKT_STRIPPED_NAME"
minWidth: 30
name: "ECCKT_STRIPPED_NAME"
rerenderOnResize: false
resizable: true
selectable: true
sortable: true
width: 300

var exportGrid = function() {
        var headerRow = '';
        var headers = [];
        var str = '';



       for (var i = 0; i < data.length; i++) {
            var line = '';
            for (var index in data[i]) {
                if(typeof data[i][index] != "object") {
                    if(!headers[index]) {
                        headers.push(index);
                        if(headerRow != '') headerRow += ',';
                        headerRow += index;
                    }
                    if(line != '') 
                        line += ',';


                    line += '"' + data[i][index] + '"';
                }
            }
            str += line + '\r\n';
        }

        var finalStr = headerRow + '\r\n' + str;
        //To Extract the CSV
        var csv=finalStr;
        var downloadLink=document.createElement("a");
        var blob=new Blob(["\ufeff",csv]);
        var url=URL.createObjectURL(blob);
        downloadLink.href=url;
        downloadLink.download="data.csv";
        document.body.appendChild(downloadLink);
        downloadLink.click();
        document.body.removeChild(downloadLink);

}

标签: javascriptperformance

解决方案


推荐阅读