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值。

pasting

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

DEMO下载地址:https://dwz.cn/Jw3z6fVq

两种 js下载文件的方法(转)的更多相关文章

  1. 两种js下载文件的方法(转)

    function DownURL(strRemoteURL, strLocalURL){ try{ var xmlHTTP = new ActiveXObject("Microsoft.XM ...

  2. 两种 js下载文件的步骤

    ----------------------------------引用地址链接------------------------------------------------- http://www ...

  3. 两种读取.xml文件的方法

    这里介绍两种读取配置文件(.xml)的方法:XmlDocument及Linq to xml 首先简单创建一个配置文件: <?xml version="1.0" encodin ...

  4. 把页面上的图表导出为pdf文件,分享一种请求下载文件的方法

    最近客户提出一个需求,就是把页面上的图表导出为pdf文件. 找了很多资料.终于有了点头绪.最主要是参考了HighCharts的做法.http://www.hcharts.cn/ 实现原理:把页面图表的 ...

  5. web 中常用的两种上传文件的方法总结

    这里我们来总结整理一下常用的两种文件上传方式以及要注意的东西: 1.springmvc .MultipartFile 的上传方式. 2.org.apache.commons.fileupload 使用 ...

  6. 两种js数组去重的方法

    方法一: 新建一个数组,遍历原数组,在新数组内用IndexOf查找原数组内的每一项,如果没有找到,则添加到其中 代码如下: function arrayNew(arrs ){ var newArray ...

  7. C#利用WebClient 两种方式下载文件

    WebClient client = new WebClient(); 第一种 string URLAddress = @"http://files.cnblogs.com/x4646/tr ...

  8. C#利用WebClient 两种方式下载文件(一)

    WebClient client = new WebClient(); 第一种 string URLAddress = @"http://files.cnblogs.com/x4646/tr ...

  9. 两种js方法发起微信支付:WeixinJSBridge,wx.chooseWXPay区别

    原文链接:https://www.2cto.com/weixin/201507/412752.html 1.为什么会有两种JS方法可以发起微信支付? 当你登陆微信公众号之后,左边有两个菜单栏,一个是微 ...

随机推荐

  1. windows安装tf

    https://www.cnblogs.com/lvsling/p/8672404.html

  2. C# 消息队列 RabbitMQ

    1.引言 RabbitMQ——Rabbit Message Queue的简写,但不能仅仅理解其为消息队列,消息代理更合适. RabbitMQ 是一个由 Erlang 语言开发的AMQP(高级消息队列协 ...

  3. ASP.NET Easyui datagrid增删改+sqlhelper

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAjAAAAFxCAYAAABtHZI7AAAgAElEQVR4nOy9DXwU1b3//wmCYHjUPl

  4. Nginx+Keepalived(二)

    Linux CentOS7安装Nginx 1.gcc 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境. yum install gcc-c++ 2.PCRE pcre- ...

  5. [转]一千行 MySQL 学习笔记

    原文地址:https://www.cnblogs.com/shockerli/p/1000-plus-line-mysql-notes.html /* 启动MySQL */ net start mys ...

  6. poj2828(线段树查找序列第k小的值)

    题目链接:https://vjudge.net/problem/POJ-2828 题意:有n个人,依次给出这n个人进入队列时前面有多少人p[i],和它的权值v[i],求最终队列的权值序列. 思路:基本 ...

  7. go语言变量

    变量可以通过变量名访问 Go 语言变量名由字母.数字.下划线组成,其中首个字符不能为数字 声明变量的一般形式是使用 var 关键字: var identifier type 变量声明 1. 指定变量类 ...

  8. c#: TextBox添加水印效果(PlaceHolderText)

    基于他人代码修改,不闪,以做备忘. 与SendMessage EM_SETCUEBANNER消息相比,它能改变字体绘制颜色,EM_SETCUEBANNER只限定了DimGray颜色,太深 //与Sen ...

  9. vue父子组件实现v-model

    话不多说,直接上代码 <div id="app"> <price-input v-bind:value="price" v-on:input= ...

  10. c# post方法亲测可用

    /// <summary> /// Post接口方法 /// </summary> /// <param name="requestUri">& ...