请用下面的代码进行理解。我在我的代码中使用html和javascript我想使用javascript codding从我的服务器目录下载文件,例如当我点击下载按钮然后我想要一个关于javascript点击事件的文件。
{function downloadfile(path){
alert(path);
}
<a href="#" onclick="downloadfile('uploaded/document/<?=$row['filelocation'];?>')">DOWNLOAD</a>}
答案 0 :(得分:1)
你试过这个吗?
window.open(URL, '_self');
URL是您要下载的文件的绝对URL。
答案 1 :(得分:1)
如果您正在寻找,则无法通过JavaScript强制下载文件。您可以在新窗口中打开该文件,但在我看来,正确的方法是避免使用JavaScript并链接到强制下载的PHP文件,这样浏览器就不会显示该页面,因为它正在下载文件。
这将属于以下几行:
HTML / PHP
<a href="download.php?file=uploaded/document/<?=$row['filelocation'];?>">DOWNLOAD</a>
PHP脚本(download.php) - 我从http://davidwalsh.name/php-force-download获得了部分代码
<?php
// grab the requested file's name
$file_name = urldecode($_GET['file']);
// make sure it's a file before doing anything!
if(is_file($file_name)) {
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.basename($file_name).'"');
header('Content-Length: '.filesize($file_name)); // provide file size
readfile($file_name); // push it out
}
?>
答案 2 :(得分:1)
链接的目的地有一个包含此来源的PHP文件:
// File: download.php
$filename = $_GET['path'];
header('Content-type: Application/octet-stream');
header('Content-Disposition: attachment; filename=$nome_file');
header('Content-Description: My Download :)');
header('Content-Length: '. filesize($filename) );
readfile($filename);
您的Javascript功能:
function downloadfile(path){
window.open('download.php?path='+path, '_blank');
}
祝你好运, 凯文