Ajax和下载CSV文件

时间:2015-10-28 16:34:31

标签: php jquery ajax zend-framework2

我正在尝试构建一个"导出为CSV"使用ajax的系统 这是我的ajax电话

or

这是我的PHP代码,用于将数组转换为csv

fname

一切正常。我的ajax回归成功,但现在我被卡住了......

成功调用ajax后如何下载文件?下一步是什么?

我已经完成了我的研究,但没有发现任何相关和/或有用的信息。

提前致谢。

2 个答案:

答案 0 :(得分:2)

在ajax调用中返回.csv文件的url。然后在你的成功函数中放置:

i

就像浏览器自然处理的所有文件类型一样,这将导致浏览器下载文件。

答案 1 :(得分:1)

尝试使用ahref创建data URI元素,并将URL.createObjectURL属性设置为Blobdownload属性为“保存文件”对话框设置文件名

success: function (data) {
            var resp = data.response;
            var a = $("<a />", {
               href: "data:text/csv," 
                     + URL.createObjectURL(new Blob([resp], {
                         type:"text/csv"
                       })),
               "download":"filename.csv"
            });
            $("body").append(a);
            a[0].click();
        }