gpt4 book ai didi

javascript - 只需使用 Javascript/JQuery 将网格数据导出到 CSV 文件并以扩展名 .csv 保存

转载 作者:行者123 更新时间:2023-11-28 02:46:21 28 4
gpt4 key购买 nike

我找到了一些可以帮助我生成 CSV 文件的代码。但我无法使用 .csv 扩展名保存它

我使用以下代码生成 csv 文件,但我需要以 .csv 作为扩展名保存文件

var ExportToCSV= function (gridData, fileName, humanize, ignore){

var csv = '',
data = [],
ignore = [];

if (!ignore) {
ignore = [];
}

//ignore added datasource properties
var commonIgnore = ["_events", "idField", "_defaultId", "constructor", "init", "get",
"_set", "wrap", "bind", "one", "first", "trigger",
"unbind", "uid", "dirty", "parent"];
ignore = $.merge($.merge([], ignore), commonIgnore);

var data= gridData._data;



//add the header row
if (data.length > 0) {
for (var col in data[0]) {
//do not include inherited properties
if (!data[0].hasOwnProperty(col) || ($.inArray(col, ignore) > -1)) {
continue;
}

if (humanize) {
col = col.split('_').join(' ').replace(/([A-Z])/g, ' $1');
}

col = col.replace(/"/g, '""');
csv += '"' + col + '"';
if (col != data[0].length - 1) {
csv += ",";
}
}
csv += "\n";
}

//add each row of data
for (var row in data) {
for (var col in data[row]) {
//do not include inherited properties
if (!data[row].hasOwnProperty(col) || ($.inArray(col, ignore) > -1)) {
continue;
}

var value = data[row][col];
if (value === null) {
value = "";
} else if (value instanceof Date) {
value = kendo.toString(kendo.parseDate(value),"dd/MM/yyyy");
} else {
value = value.toString();
}

value = value.replace(/"/g, '""');
csv += '"' + value + '"';
if (col != data[row].length - 1) {
csv += ",";
}
}
csv += "\n";
}

//TODO replace with downloadify so we can get proper file naming
window.open("data:application/csv;charset=utf-8," + escape(csv));

};

有很多方法可以使用服务器端代码(例如 php、asp.net、java)来解决该问题。但是任何人都可以通过使用客户端脚本(即使用 Javascript/JQuery)帮助我实现相同的目标吗?

非常感谢您的帮助。

最佳答案

请关注这篇适用于 Chrome(和 FF,但尚未测试)的优秀博客文章: http://hackworthy.blogspot.co.nz/2012/05/savedownload-data-generated-in.html

我仍在寻找 IE9 上的工作方法(ActiveX 和 execCommand() 对我不起作用)。最后的手段:Flash、大量插件(Downloadify 等...)

关于javascript - 只需使用 Javascript/JQuery 将网格数据导出到 CSV 文件并以扩展名 .csv 保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11794636/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com