各个浏览器的保存浏览是不同的,只需要写服务端的代码:可以参考我项目中的代码:
if($_GET['download'])
{
    $file_type = $_GET['download'];
}
else
    exit;if($file_type == "cms_config")
    $file = '/config/cmscof.cfg'; 
elseif($file_type == "tsu_config")
    $file = '/config/config';
else
    exit;
if (file_exists($file)) { 
    header('Content-Description: File Transfer'); 
    header('Content-Type: application/octet-stream'); 
    header('Content-Disposition: attachment; filename='.basename($file)); 
    header('Content-Transfer-Encoding: binary'); 
    header('Expires: 0'); 
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
    header('Pragma: public'); 
    header('Content-Length: ' . filesize($file)); 
    ob_clean(); 
    flush(); 
    readfile($file); 
    exit; 

解决方案 »

  1.   

    不是一般的下载文件。我这个是通过FTP下载文件
      

  2.   

    那得用ActivXObject了,不过这种方式需要修改浏览器的权限设置。
    function BrowseFolder(){ 
    try{ 
    var Message = "请选择文件夹"; //选择框提示信息 
    var Shell = new ActiveXObject( "Shell.Application" ); 
    var Folder = Shell.BrowseForFolder(0,Message,0x0040,0x11);//起始目录为:我的电脑 
    //var Folder = Shell.BrowseForFolder(0,Message,0); //起始目录为:桌面 
    if(Folder != null){ 
    Folder = Folder.items(); // 返回 FolderItems 对象 
    Folder = Folder.item(); // 返回 Folderitem 对象 
    Folder = Folder.Path; // 返回路径 
    if(Folder.charAt(Folder.length-1) != "\\"){ 
    Folder = Folder + "\\"; 

    document.all.savePath.value=Folder; 
    return Folder; 

    }catch(e){ 
    alert(e.message); 


      

  3.   

    php实现不了这种功能,它是服务器端语言,你不能用文件流的方式来下载到用户端,这个下载只能由用户端的浏览器决定