ajax post方式下载后台传来的文件
参考:http://stackoverflow.com/questions/16086162/handle-file-download-from-ajax-post
 $.ajax({
     type: "POST",
     url: url,
     data: params,
     success: function(response, status, request) {
         var disp = request.getResponseHeader('Content-Disposition');
         if (disp && disp.search('attachment') != -1) {  //判断是否为文件
             var form = $('<form method="POST" action="' + url + '">');
             $.each(params, function(k, v) {
                 form.append($('<input type="hidden" name="' + k +
                         '" value="' + v + '">'));
             });
             $('body').append(form);
             form.submit(); //自动提交
         }
     }
 });
上面的方法是个技巧,
AJAX发送参数到后台后,后台处理后,传数据到前台,Ajax在success里面构建了一个from表单, 当后台传来的是文件时,自动点击提交按钮,文件就会被下载。
ajax post方式下载后台传来的文件的更多相关文章
- Ajax接收并显示后台传来的list集合内的数据信息
		
最近在学习Ajax做一个留言系统的时候碰到需要将list集合从后台传到前台ajax接收并显示的情况,在网上搜了很多,但很多情况都不是和我遇见的情况一样的,现在,直接贴出我的问题及解决方法. 后台代码: ...
 - 使用jquery通过AJAX请求方式,后台返回了当前整个HTML页面代码
		
该结果分为多种情况: 1.当前项目使用了interceptor/filter,拦截或者过滤了特定请求. 2.在HTML页面使用了表单提交,没有对表单的“onsubmit”事件做return false ...
 - ajax方式下载文件
		
在web项目中需要下载文件,由于传递的参数比较多(通过参数在服务器端动态下载指定文件),所以希望使用post方式传递参数.通常,在web前端需要下载文件,都是通过指定<a>标签的href属 ...
 - jQuery AJAX 方法 success()后台传来的4种数据
		
JAVA中的四种JSON解析方式详解 jQuery AJAX 方法 success()后台传来的4种数据 1.后台返回一个页面 js代码 /**(1)用$("#content-wrapper ...
 - 使用隐藏form表单下载文件,解决url方式下载,由于环境问题而限制url长度,满足不了所有的需求!
		
一 对于某些环境导出是直接用wiondow.href=url直接导出下载,有些业务需求,如员工档案等字段比较多的时候,全选导出就会引发异常,由于Nginx转发长度限制的问题, 如果运维不愿意改变环境, ...
 - 通过form表单上传文件获取后台传来的数据
		
小伙伴是不是遇到过这样的问题,通过submit提交form表单的时候,不知怎么获取后台传来的返回值.有的小伙伴就会说你不会发送ajax,其实也会.假如提交的form表单中含有文件,怎么办? 步骤1:想 ...
 - 利用ajax的方式来提交数据到后台数据库及交互功能
		
怎么样用ajax来提交数据到后台数据库,并完成交互呢????? 一.当我们在验证表单的时候,为了阻止把错误的也发送到服务器,我们通常这样设置: $(function(){ var ...
 - 浅谈odoo 后台与前端文件(附件)的存储与下载
		
odoo 后台与前端文件(附件)存储与下载实现 笔记太多了很乱,想想还是写博客的好,慢慢更 当然了,前提是你已经配好了odoo开发环境 一.odoo后台界面实现附件的上传和下载 1).在应用中搜索下图 ...
 - jQuery ajax方法success()中后台传来的四种数据类型
		
1.后台返回一个页面 js代码 /**(1)用$("#content-wrapper").html(data);显示页面*/ $.ajax({ async : false, cac ...
 
随机推荐
- AltiumDesigner PCB布局布线过程与技巧
			
首先是原理图设计. 原理图设计是前期准备工作,对简单的板子,如果熟练流程,不妨可以跳过.但是对于初学者一定要按流程来,这样一方面可以养成良好的习惯,另一方面对复杂的电路也只有这样才能避免出错.在画原理 ...
 - css的overflow属性
			
原文:https://www.jianshu.com/p/67b536fc67c1 ------------------------------------------- 事实上我挺长一段时间都没弄清 ...
 - Andriod NDK编译的时候无法使用math.h的函数。
			
编译NDK项目的时候,当用到sinf的时候,编译报错: 选中sinf函数,右键Go to declaration, 发现math.h的文件路径是: c:\ProgramData\Microsoft\A ...
 - hadoop hue切换中文版
			
搭建了Hue之后发现只有英文的界面,非常不开心,于是百度谷歌了一大堆也没有发现可靠的办法,就自己上手了一把,亲测可行. 英文版: 中文版: hue切换使用中文版的方法如下: 1.修改配置文件 vi / ...
 - nodejs发送请求
			
const https = require('https'); var options = { hostname: 'registry.yarnpkg.com', port: 443, path: ' ...
 - [Javascript] Check both prop exists and value is valid
			
Sometime you need to check one prop exists on the object and value should not be ´null´ or ´undefine ...
 - ArcGIS 10.4的0x80040228许可错误
			
今天,再次遇到这个问题,再忙得把它记录下来! AO/AE程序的许可方式 不管是开发环境是基于ArcObject还是基于ArcEngine,不管运行环境是Desktop还是Runtime(早已改名了为A ...
 - Android开发 - Fragment与Activity生命周期比较
			
1. Fragment的生命周期 见下图 2. 与Activity生命周期的对比 见下图 3. 代码场景演示实例 切换到该Fragment: AppListFragment(7649): onAtta ...
 - vue初始化数据加载
			
使用created钩子 import AppLayout from '@/components/app-layout' import axios from 'axios' export default ...
 - VB控件 与 引用或部件
			
序号 控件名 部件或引用 用途 2 ActiveMovie Microsoft ActiveMovie Control 3 ADODB Windows ADO Ext. 2.8 for DLL ...