Ajax文件下载

来源:互联网 发布:淘宝新浪博客 编辑:程序博客网 时间:2024/05/20 21:48

<html>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  <script type="text/javascript" src="jquery-1.4.2.js"></script>
 </head>

    <body>

 <a href="http://sishuok.com/forum/download?filename=2012/8/3/59e99e4584d24c982bba2ecbb52459ee__hadoop%E5%88%9D%E7%BA%A7ppt.rar">a标签下载</a>

 <input
    type='button'
    value="修改地址栏下载"
    onclick="window.location.href='http://sishuok.com/forum/download?filename=2012/8/3/59e99e4584d24c982bba2ecbb52459ee__hadoop%E5%88%9D%E7%BA%A7ppt.rar'">

 <input
    type='button'
    value="打开新窗口下载"
    onclick="window.open('http://sishuok.com/forum/download?filename=2012/8/3/59e99e4584d24c982bba2ecbb52459ee__hadoop%E5%88%9D%E7%BA%A7ppt.rar')">

 
 <iframe id="fileDownFrame" src="" style="display:none; visibility:hidden;"></iframe>
 
 <input
     type='button'
  value="ajax下载"
  onclick='$("#fileDownFrame").attr("src","http://sishuok.com/forum/download?filename=2012/8/3/59e99e4584d24c982bba2ecbb52459ee__hadoop%E5%88%9D%E7%BA%A7ppt.rar");'>
 <!--
  ajax下载或者使用 jquery.fileDownload 插件
  http://johnculviner.com/post/2012/03/22/Ajax-like-feature-rich-file-downloads-with-jQuery-File-Download.aspx
  
  服务器端设置不缓存
  header("Pragma: public");
  header("Expires: 0");
  header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
  

 -->
 
 </body>
</html>

 

 

通过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();   //表单提交