Test

Test4Test

HTML

<a href="#" id="excelDownload"><button>엑셀다운로드</button></a>

JavaScript

function exportDataToCSVFile(header, keys, body) {

  var csv = ''
  csv=header.join(',');
  csv+='\n';


  $.each(body, function(index, rows){

    if(rows){
      var tmp = [];
      $.each(keys, function(index, key){

        key && tmp.push(rows[key])
      })
      csv+=tmp.join(',');
      csv+='\n';
    }
  })

  // Data URI
  var csvData = 'data:application/csv;charset=utf-8,' + encodeURIComponent(csv);

  $(this)
    .attr({
    'download': 'temp.csv',
    'href': csvData,
    'target': '_blank'
  });
}

$('#excelDownload').on('click', function(event){
  var header = [];
  header.push('col1');
  header.push('col2');
  header.push('col3');
  header.push('col4');
  var body = [];
  body.push({'key1':'a1', 'key2':'b1', 'key3':'c4', 'key4':'d1'})
  body.push({'key1':'a2', 'key2':'b2', 'key3':'c3', 'key4':'d2'})
  body.push({'key1':'a3', 'key2':'b3', 'key3':'c2', 'key4':'d3'})
  body.push({'key1':'a4', 'key2':'b4', 'key3':'c1', 'key4':'d4'})
  var keys = [];
  keys.push('key1');
  keys.push('key2');
  keys.push('key3');
  keys.push('key4');
  exportDataToCSVFile.apply(this, [ header, keys, body ])
})