如何从jQuery下载excel获取ajax请求

我有一个弹簧MVC视图,它提供了一个excel文件,但是,现在我已经修改了这个过程,以便用户在下载excel之前获取一个模式框,在这个框中可以select一些选项。 这些选定的选项被发送到视图。

我的请求看起来像这样

$.get("downloadExcel", { 'foo': 'bar' }); 

当这个请求,我期望文件被下载,但是,这并没有发生。 即使上面请求的响应头是:

 Cache-Control:private, must-revalidate Content-disposition:attachment; filename=filename.xls Content-Language:en-US Content-Type:application/vnd.ms-excel; charset=ISO-8859-1 Pragma:private Server:Jetty(6.1.14) Transfer-Encoding:chunked 

注意 :当我删除对话框时,所有工作都很好,因此请求不再是ajax请求。

有没有办法通过ajax请求获取excel文件?

你不能使用Ajax响应来做到这一点。 您需要redirect浏览器或在页面中呈现隐藏的iFrame以启动下载。