|
626 | 626 | var exportData = self.getData(grid, rowTypes, colTypes);
|
627 | 627 | var csvContent = self.formatAsCsv(exportColumnHeaders, exportData, grid.options.exporterCsvColumnSeparator);
|
628 | 628 |
|
629 |
| - self.downloadFile (grid.options.exporterCsvFilename, csvContent, grid.options.exporterOlderExcelCompatibility); |
| 629 | + self.downloadFile (grid.options.exporterCsvFilename, csvContent, grid.options.exporterCsvColumnSeparator, grid.options.exporterOlderExcelCompatibility); |
630 | 630 | });
|
631 | 631 | },
|
632 | 632 |
|
|
909 | 909 | * download as a file
|
910 | 910 | * @param {boolean} exporterOlderExcelCompatibility whether or not we put a utf-16 BOM on the from (\uFEFF)
|
911 | 911 | */
|
912 |
| - downloadFile: function (fileName, csvContent, exporterOlderExcelCompatibility) { |
| 912 | + downloadFile: function (fileName, csvContent, columnSeparator, exporterOlderExcelCompatibility) { |
913 | 913 | var D = document;
|
914 | 914 | var a = D.createElement('a');
|
915 | 915 | var strMimeType = 'application/octet-stream;charset=utf-8';
|
916 | 916 | var rawFile;
|
917 |
| - var ieVersion; |
| 917 | + var ieVersion = this.isIE(); |
| 918 | + |
| 919 | + // IE10+ |
| 920 | + if (navigator.msSaveBlob) { |
| 921 | + return navigator.msSaveOrOpenBlob( |
| 922 | + new Blob( |
| 923 | + [exporterOlderExcelCompatibility ? "\uFEFF" : '', csvContent], |
| 924 | + { type: strMimeType } ), |
| 925 | + fileName |
| 926 | + ); |
| 927 | + } |
918 | 928 |
|
919 |
| - ieVersion = this.isIE(); |
920 |
| - if (ieVersion && ieVersion < 10) { |
| 929 | + if (ieVersion) { |
921 | 930 | var frame = D.createElement('iframe');
|
922 | 931 | document.body.appendChild(frame);
|
923 | 932 |
|
924 |
| - frame.contentWindow.document.open("text/html", "replace"); |
925 |
| - frame.contentWindow.document.write('sep=,\r\n' + csvContent); |
| 933 | + frame.contentWindow.document.open('text/html', 'replace'); |
| 934 | + frame.contentWindow.document.write('sep=,' + columnSeparator + '\r\n' + csvContent); |
926 | 935 | frame.contentWindow.document.close();
|
927 | 936 | frame.contentWindow.focus();
|
928 | 937 | frame.contentWindow.document.execCommand('SaveAs', true, fileName);
|
|
931 | 940 | return true;
|
932 | 941 | }
|
933 | 942 |
|
934 |
| - // IE10+ |
935 |
| - if (navigator.msSaveBlob) { |
936 |
| - return navigator.msSaveOrOpenBlob( |
937 |
| - new Blob( |
938 |
| - [exporterOlderExcelCompatibility ? "\uFEFF" : '', csvContent], |
939 |
| - { type: strMimeType } ), |
940 |
| - fileName |
941 |
| - ); |
942 |
| - } |
943 |
| - |
944 | 943 | //html5 A[download]
|
945 | 944 | if ('download' in a) {
|
946 | 945 | var blob = new Blob(
|
|
0 commit comments