页面上的页面如下:

我需要根据返回的url下载文件:

js:

  1. //判断浏览器类型
  2. function myBrowser(){
  3. var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
  4. var isOpera = userAgent.indexOf("Opera") > -1;
  5. if (isOpera) {
  6. return "Opera"
  7. }; //判断是否Opera浏览器
  8. if (userAgent.indexOf("Firefox") > -1) {
  9. return "FF";
  10. } //判断是否Firefox浏览器
  11. if (userAgent.indexOf("Chrome") > -1){
  12. return "Chrome";
  13. }
  14. if (userAgent.indexOf("Safari") > -1) {
  15. return "Safari";
  16. } //判断是否Safari浏览器
  17. if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {
  18. return "IE";
  19. }; //判断是否IE浏览器
  20. if (userAgent.indexOf("Trident") > -1) {
  21. return "Edge";
  22. } //判断是否Edge浏览器
  23. }
  1. function SaveAs5(imgURL)
  2. {
  3. var oPop = window.open(imgURL,"","width=1, height=1, top=5000, left=5000");
  4. for(; oPop.document.readyState != "complete"; )
  5. {
  6. if (oPop.document.readyState == "complete")break;
  7. }
  8. oPop.document.execCommand("SaveAs");
  9. oPop.close();
  10. }
  11.  
  12. var odownLoad=null;
  13. function downF(obj){
  14. odownLoad = document.getElementById(obj);
  15. var url = $(odownLoad).siblings("input[name='fgycompany.fileUrl']").val();
  16. oDownLoad(url);
  17. }
  1. function oDownLoad(url) {
  2. debugger;
  3. myBrowser();
  4. if (myBrowser()==="IE"||myBrowser()==="Edge"){
  5. //IE
  6. odownLoad.href="#";
  7. var oImg=document.createElement("img");
  8. oImg.src=url;
  9. oImg.id="downImg";
  10. var odown=document.getElementById("down");
  11. odown.appendChild(oImg);
  12. SaveAs5(document.getElementById('downImg').src)
  13. }else{
  14. //!IE
  15. odownLoad.href=url;
  16. odownLoad.download="";
  17. }
  18. }

js使用浏览器的另存为下载文件的更多相关文章

  1. 极其简单的用JS在浏览器中创建下载文件的方法

    有这样一个需求,在js中动态创建一个页面,然后下载该页面为word文档,研究了一上午,最后发现实现起来如此简单. 在js中创建如下方法:(直接复制即可) function downloadFile(f ...

  2. js中使用showModelDialog中下载文件的时候,闪一下后无法下载

    在js中使用showModelDialog中下载文件的时候,会因为showModelDialog自动设置target为_self导致下载文件“只会闪一下”就消失掉 在吧target设置为_blank后 ...

  3. Java Web实现使用浏览器从服务器下载文件(后台)

    Java Web实现 使用浏览器从服务器下载文件. 下面实现两种情况的下载,需求如下: 需求(一):1.用户在页面填写表单. 2.填写完成后,选择下载,将表单内容发往后台. 3.后台根据内容生产一个文 ...

  4. [转]用JavaScript在浏览器中创建下载文件

    前端很多项目中,都有文件下载的需求,特别是JS生成文件内容,然后让浏览器执行下载操作(例如在线图片编辑.在线代码编辑.iPresst等. 但受限于浏览器,很多情况下我们都只能给出个链接,让用户点击打开 ...

  5. webdriver高级应用- 右键另存为下载文件

    1.要使用右键另存,需要先按照第三方工具AutoIt: 链接: https://pan.baidu.com/s/12aBBhOOTmyQpH9hukt0XGA 密码: fcdk 2.创建一个名为loa ...

  6. 使用js实现点击按钮下载文件

    有时候我们在网页上需要增加一个下载按钮,让用户能够点击后下载页面上的资料,那么怎样才能实现功能呢?这里有两种方法: 现在需要在页面上添加一个下载按钮,点击按钮下载文件. 题外话,这个下载图标是引用的 ...

  7. selenium webdriver 右键另存为下载文件(结合robot and autoIt)

    首先感谢Lakshay Sharma 大神的指导 最近一直在研究selenium webdriver右键菜单,发现selenium webdriver 无法操作浏览器右键菜单,如图 如果我想右键另存为 ...

  8. 直接通过Response输出流写文件,浏览器表现为下载文件

    response.setContentType("application/x-download"); response.addHeader("Content-Dispos ...

  9. js打开新的链接下载文件

    var p =params.join("&"); var a = document.createElement('a'); a.href = 'report/exportp ...

随机推荐

  1. java 二维码生成(vcard)

    1. maven 依赖 <dependency> <groupId>com.googlecode.ez-vcard</groupId> <artifactId ...

  2. vue-router做路由拦截时陷入死循环

    今天分享一下使用vue-router做路由拦截时遇到的坑. 需要提前了解的api 1:router.beforeEach( to , from ,next) ; to: Route: 即将要进入的目标 ...

  3. Spark的CombineByKey

    combineBykey关键是要明白里面的三个函数: 1. 当某个key第一次出现的时候,走的是第一个函数(createCombin):A function that creates a combin ...

  4. (转)Android studio 使用心得(五)—代码混淆和破解apk

    这篇文章等是跟大家分享一在Android studio 进行代码混淆配置.之前大家在eclipse上也弄过代码混淆配置,其实一样,大家可以把之前在eclipse上的配置文件直接拿过来用.不管是.cfg ...

  5. c# 数据库通用类DbUtility

    DbProviderType数据库类型枚举 /// <summary> /// 数据库类型枚举 /// </summary> public enum DbProviderTyp ...

  6. 学生选课数据库SQL语句练习题

    一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...

  7. 杂项: Memcached

    ylbtech-杂项: Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动 ...

  8. 将新浪博客里的表情包存入MySQL数据库不完整版本一堆可能用到的散乱代码

    header = {'Cookie': 'SINAGLOBAL=7368591819178.463.1491810091070; ALF=1558832450; SCF=Ajrc1sxuwynVIu_ ...

  9. Docker - 使用Swarm和compose部署服务(containers)

    前言 在之前使用Docker的过程中,一直是用 Docker run 命令单独启动container后再加入Overlay网络的方式实现部署工作的. 这种方式看似直接,但是随着服务所包含的contai ...

  10. 浅谈PHP面向对象编程(五、继承)

    5.0 继承 5.1 继承的概念 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使许多事物之间形成一种关系体系 . 例如猫和狗都属于动物,程序中 ...