首页 > 代码库 > 两种 js下载文件的方法(转)
两种 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="http://www.mamicode.com/进入1" onClick = "downloadFile(‘http://wan.exe‘)">
注:在HTML中,IFRAME的属性用SRC,但在JS中,只有部份浏览器支持修改SRC(读是没问题),真正通用的是要修改对应框架的href值。
function switchIframe(){ window.frames["frameName"].location.href="http://www.mamicode.com/action(或你需要的名字).aspx" }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。