我需要将表格中显示的数据导出为 CSV 格式。我已经尝试了很多东西,但无法让它适用于 IE 9 及更高版本。
我用我的代码创建了一个虚拟小提琴。
var data = [
["name1", "city1", "some other info"],
["name2", "city2", "more info"]
];//Some dummy data
var csv = ConvertToCSV(data);//Convert it to CSV format
var fileName = "test";//Name the file- which will be dynamic
if (navigator.userAgent.search("MSIE") >= 0) {
//This peice of code is not working in IE, we will working on this
//TODO
var uriContent = "data:application/octet-stream;filename=" + fileName + '.csv' + "," + escape(csv);
window.open(uriContent + fileName + '.csv');
} else {
var uri = 'data:text/csv;charset=utf-8,' + escape(csv);
var downloadLink = document.createElement("a");
downloadLink.href = uri;
downloadLink.download = fileName + ".csv";
document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);
}
我在 Stackoverflow 中看到了许多链接,但找不到任何适用于 IE9 或更高版本的链接。就像@Terry Young 在 how-to-data-export-to-csv-using-jquery-or-javascript 中解释的那样
另外,试过——
var csv = ConvertToCSV(_tempObj);
var fileName = csvExportFileName();
if (navigator.appName != 'Microsoft Internet Explorer') {
window.open('data:text/csv;charset=utf-8,' + escape(str));
}
else {
var popup = window.open('', 'csv', '');
popup.document.body.innerHTML = '<pre>' + str + '</pre>';
}
不知道如何修复它。我不想访问服务器并导出我的 CSV(要求是这样的)。