2

ダウンロード用の CSV を生成する関数の下にしようとしていますが、私が見ているのは、alert.

function ExportMyChart(type) {
    var chartObj = getChartFromId('myChartIdAmount4');
    if( chartObj.hasRendered() ){
        if(type === 'CSV'){  
            alert(chartObj.getDataAsCSV());
        }else{
            chartObj.exportChart({ exportAtClient: '1',  exportFormat: type, exportAction: 'download' }); 
        }
    }
}

chartObj.exportChartPDF、JPEGで機能するように、CSVで機能させる方法はありますか? これについて何か助けていただければ幸いです。ありがとう。

4

2 に答える 2

2

CSV 文字列をエンコードし、createElement アンカー タグ オブジェクトのダウンロード メソッドを使用して、CSV をダウンロード可能なファイルとしてエクスポートできます。実装をわずかに変更した以下のコードを参照してください。

FusionCharts V 3.3.1 を使用する私のjsFiddleを参照してください

var exportMyChart = function (type) {
    var chartObj = FusionCharts('myChartIdAmount4');

    if (chartObj.hasRendered()) {
        if(type === 'CSV'){  
            var a = document.createElement('a');
            a.href = 'data:attachment/csv,' + encodeURIComponent(chartObj.getDataAsCSV());
            a.target = '_blank';
            a.download = 'export.csv';
            document.body.appendChild(a);
            a.click();
        }
        else{
            chartObj.exportChart({ exportAtClient: '1',  exportFormat: type, exportAction: 'download' });
        }
    }
    else{
        alert("What are you trying to export?");
    }
}
于 2013-09-04T05:42:15.640 に答える