jQuery使用动态渲染表单功能完成ajax文件下载

jQuery使用动态渲染表单功能完成ajax文件下载

原文链接:http://www.poluoluo.com/jzxy/201301/195126.html

封装的通用js函数代码:

// Ajax 文件下载 
jQuery.download = function(url, data, method){ 
// 获取url和data 
if( url && data ){ 
// data 是 string 或者 array/object 
data = typeof data == 'string' ? data : jQuery.param(data); 
// 把参数组装成 form的 input 
var inputs = ''; 
jQuery.each(data.split('&'), function(){ 
var pair = this.split('='); 
inputs+='<input type="hidden" name="'+ pair[0] +'" value="'+ pair[1] +'" />'; 
}); 
// request发送请求 
jQuery('<form action="'+ url +'" method="'+ (method||'post') +'">'+inputs+'</form>') 
.appendTo('body').submit().remove(); 
}; 
};

调用代码:

$.download('ExcelDownload.do','find=commoncode','post' );

经测,代码是可以正常运行的,也能实现Ajax下载文件的功能,放在公共js文件里,可以很方便的调用