zickyboy 发表于 2011-10-19 15:49:56

ajax方式zip下载问题

问题描述:
在火狐浏览器地址栏直接输入uri “index.php/todo/aaa”可以正常生成zip并提示下载;
但是通过ajax post的方式,服务器端会生成zip,但是浏览器不提示下载,并响应乱码。

期望:通过ajax方式也可正常下载zip包。

javascript代码:
var doc=$( "form" ).serializeArray();
            $.ajax({
               type: "post",
               url: "../index.php/todo/aaa",
               data: doc,
               success: function(msg){
               console.log(msg);
               }
            });

php代码如下:
function aaa()
    {
      //fb($_POST);   
      echo("hahaha");
      $this->load->library('zip');
      $name = $_POST['id'].'.txt';
      //fb($name);
      $data = 'A Data String!';
      
      $this->zip->add_data($name, $data);
      $this->zip->archive('download/interface.zip');
      $this->zip->download('interface.zip');

    }

sdink 发表于 2012-7-15 00:16:47

<iframe src="" style="display:none;" name="download" id="download"></iframe> 表单或是url都指到这里可能比你想象的效果好
页: [1]
查看完整版本: ajax方式zip下载问题