php下载文件无法从jquery发布

时间:2015-09-04 14:09:47

标签: javascript php jquery download

在浏览器中下载.php?RID = 189正常工作。即加载并开始下载mp3文件。

但是当从onclick调用时,没有任何反应。 数据填充正常并且成功但没有下载开始。我需要对数据做些什么才能启动或改变调用php文件的方式? php文件基于:http://davidwalsh.name/php-force-download

 function onApproveClick(clickVal) 
 {
    $.post("download.php",
    {
      RID: clickVal.value,
    },
    function(data,status){
      //  alert("Data: " + data + "\nStatus: " + status);

    }); 

 }  

1 个答案:

答案 0 :(得分:3)

如果您想让浏览器下载文件,则无法使用AJAX调用。 AJAX发生在后台,然后数据提供给你的回调。

如果您想让浏览器下载文件,则需要将其重定向到您的页面:

function onApproveClick(clickVal){
    window.location = 'download.php?RID='+clickVal.value;
}

如果您的PHP页面发送了正确的标题,那么该文件将被下载,用户将保留在当前页面上。