jQuery下载带有链接onclick的csv文件

时间:2016-11-14 14:51:11

标签: javascript php jquery html csv

我正在尝试使用jquery按钮onclick下载CSV文件。我有一个标识为<a>的{​​{1}}标记,我希望它指向下载链接,我可以下载我刚刚创建的CSV文件。

export

这是我的PHP代码,我正在创建一个CSV文件

// Using this jquery to send my sql query to server-side-CSV
$('#export').on('click', function() {
  var sqlsend = dataTable.ajax.json().sql;
  $.post('server-side-CSV.php', 'val=' + sqlsend, function(request){
    //code should go here
  });
});

我该怎么做才能下载CSV文件?

编辑: 最后找出答案,

// This is my server-side-CSV file. It's creating a csv file to     downloaded
<?php
require("connection.php");
$sql = $_POST['val'];
.
.more code
.

// loop over the rows, outputting them
while ($row = mysqli_fetch_assoc($rows)) fputcsv($output, $row);
fclose($output);
exit;
?>

1 个答案:

答案 0 :(得分:0)

而不是$.post,请将浏览器发送到下载位置:

document.location.href = 'server-side-CSV.php?val='+sqlsend;

您需要在循环之前添加标题。

header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=file.csv");
header("Pragma: no-cache");
header("Expires: 0");

请参阅this answer