Javascript 如何以.csv格式导出数据表?

Javascript 如何以.csv格式导出数据表?,javascript,html,Javascript,Html,这里是我试图做的但无法实现的结果。数据下载时没有“.csv”扩展名 function get_modal1(data) { $("#popupcontent").html(data); var t = document.getElementById('tablename').innerText; $('title').html(t); $('#example').DataTable({ dom: 'lBfrtip', buttons: [

这里是我试图做的但无法实现的结果。数据下载时没有“.csv”扩展名

function get_modal1(data) {
  $("#popupcontent").html(data);

  var t = document.getElementById('tablename').innerText;
  $('title').html(t);

  $('#example').DataTable({
        dom: 'lBfrtip',

        buttons: [

            'csv',


        ]
    } );

这就是数据表在没有扩展名.csv的情况下导出的方式

我无法将数据导出为.csv。我做错了什么? 数据正在下载,当我用记事本打开它时,它是逗号分隔的。这里可能有什么问题


[1] :

这有点重写,但我会这么做,假设您的函数将格式化数据并导致文件下载:

function get_modal1(_data) {
    // create a blob in memory of type text/csv
    var _blob = new Blob([_data], {type: 'text/csv'});
    var _file = "my_data.csv";

    // create an anchor in memory for the file
    var anc = document.createElement('a');
    anc.style = "display: none";

    // populate the url with the blob
    var _f_url = window.URL.createObjectURL(blob);
    anc.href = _f_url;
    anc.download = _file;

    // In case you have to support IE 11, IE 11 cannot handle dynamic click of an anchor to initiate save, so use msSaveBlob instead.
    // in any case, fire the anchor link just created... user should get the file at this point.
    if ( window.navigator.msSaveBlob ) {
       window.navigator.msSaveBlob(blob, _file);                        
    } else {
       anc.dispatchEvent(new MouseEvent('click'));
    }

    // clear url out of memory to be safe.
    window.URL.revokeObjectURL(_f_url);

 });