테이블에 표시된 데이터를 CSV 형식으로 내 보내야합니다. 나는 많은 것을 시도했지만 Internet Explorer 9 이상에서는 작동하지 않습니다.Javascript/jQuery : IE에서 CSV의 데이터 내보내기가 작동하지 않습니다.
내 코드가 created a dummy fiddle입니다.
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 explains in 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를 내보내고 싶지 않습니다 (요구 사항은 그렇게 말합니다). 당신이 할 수있는 10 + IE를 들어
@Shubh 당신은 전혀이 문제를 해결 않았다 - 내가 직면하고있다 동일한 문제 -이 해결 방법을 살펴 보았습니다 - http://blog.paxcel.net/blog/savedownload-file-using-html5-javascript-the-download-attribute-2/하지만 나를 위해 일한 적이 없습니다 – anna
@anna '아니야. '나는 그것을 풀 수 없었다. 마지막으로 원하는 것을 얻으려면 Server Side 논리를 사용해야했습니다. – Shubh
감사합니다. 계속 악몽을 꾸며야 할 것입니다. – anna