问答详情 回答
您尚未登录,请登录
培训首页 > web前端培训问答 > js通过 URL下载文件

js通过 URL下载文件

js通过 URL下载文件

818浏览 2017-09-13


  • 其他回答

  • 匿名用户
    匿名用户

    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触发:

    注:在HTML中,IFRAME的属性用SRC,但在JS中,只有部份浏览器支持修改SRC(读是没问题),真正通用的是要修改对应框架的href值。 function switchIframe(){ window.frames["frameName"].location.href="action(或你需要的名字).aspx" }

    2017-09-13 10:06:12