由于jQuery的ajax函数、及ajaxSubmit等函数的返回类型(dataType)只有xml、text、json、html等类型,没有“流”类型,故我们要实现ajax下载时,不能够使用相应的ajax函数进行文件下载。
在网上看了一些文章,发现可以通过js生成一个form,用这个form提交参数,并返回“流”类型的数据。在实现过程中,页面也没有进行刷新。
请看实例:
var form = $("<form>"); //定义一个form表单 form.attr('style','display:none'); //在form表单中添加查询参数 form.attr('target',''); form.attr('method','post'); form.attr('action',"exportSms"); var input1 = $('<input>'); input1.attr('type','hidden'); input1.attr('name','exportPostTime'); input1.attr('value',timeString); $('body').append(form); //将表单放置在web中 form.append(input1); //将查询参数控件提交到表单上 form.submit(); //表单提交
http://blog.163.com/asd_wll/blog/static/210310402012102122527349/