douzhao2047 2015-04-20 13:21
浏览 32
已采纳

点击同一按钮发布和下载?

Is it possible to POST using AJAX and then force download with the response when successful?

My code:

$(document).on("click", "#CSV", function () {

    var csv_value = $('#result').table2CSV({
        delivery: 'value'
    });
    console.log(csv_value);
    $.ajax({
        type: "POST",
        url: "csv.php",
        data: {
            csv: csv_value
        },
        success: function (html) {
          //Download
        }
    });

});

As you can see i'm converting my HTML table to CSV then posting it to my php file where I want to generate a .csv file as this is not possible using JS.

php script.

$file = $_POST['csv'];
$filename = $file."_".date("Y-m-d_H-i",time());
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header( "Content-disposition: filename=".$filename.".csv");
$csv_output=stripcslashes($_POST['csv']);
print $csv_output;
exit;

Can I initiate a download from my success function?

  • 写回答

1条回答 默认 最新

  • duanji9677 2015-04-20 13:38
    关注

    I think the easiest way would be to redirect the user to the download page, something like this:

    success: function (html) {
      window.location.href = "your/download/path/file.php";
    }
    

    In this file, you prepare the download.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求
  • ¥20 antv g6 折线边如何变为钝角
  • ¥30 如何在Matlab或Python中 设置饼图的高度
  • ¥15 nginx中的CORS策略应该如何配置
  • ¥30 信号与系统实验:采样定理分析
  • ¥100 我想找人帮我写Python 的股票分析代码,有意请加mathtao
  • ¥20 Vite 打包的 Vue3 组件库,图标无法显示