兩種 js下載文件的方法(轉)


function DownURL(strRemoteURL, strLocalURL){
        try{
            var xmlHTTP = new ActiveXObject("Microsoft.XMLHTTP");
            xmlHTTP.open("Get", strRemoteURL, false);
            xmlHTTP.send();
            var adodbStream = new ActiveXObject("ADODB.Stream");
            adodbStream.Type = 1;//1=adTypeBinary 
            adodbStream.Open();
            adodbStream.write(xmlHTTP.responseBody);
            adodbStream.SaveToFile(strLocalURL, 2);
            adodbStream.Close();
            adodbStream = null;
            xmlHTTP = null;
        }
        catch (e){
            window.confirm("下載URL出錯!");
        }
        //window.confirm("下載完成."); 
    }

例如要下載文件的地址為:htpp://www.baidu.com/test.rar  
我們可以使用window.open("htpp://www.baidu.com/test.rar"),  
但是該方法在火狐上沒有效果的,在IE瀏覽器上是可以的。  

如果用window.location.href="htpp://www.baidu.com/test.rar";火狐有些版本是不支持的。  

為了解決這個問題,我們可以換做另外一種方法  
我們可以寫成如下樣式即可以了:  
window.location="htpp://www.baidu.com/test.rar"; 

2.文件的下載到本地(默認)(ie 和火狐都可以)

function downloadFile(url) {   
        try{ 
            var elemIF = document.createElement("iframe");   
            elemIF.src = url;   
            elemIF.style.display = "none";   
            document.body.appendChild(elemIF);   
        }catch(e){ 
 
        } 
    }

js觸發: 
<div class="login_center"><a href="javascript:_login()"></a></div> 
    <input type="button" value="進入1" onClick = "downloadFile('http://wan.exe')">

注:在HTML中,IFRAME的屬性用SRC,但在JS中,只有部份瀏覽器支持修改SRC(讀是沒問題),真正通用的是要修改對應框架的href值。

function switchIframe(){
    window.frames["frameName"].location.href="action(或你需要的名字).aspx"
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM