通过表单提交下载文件,需要回调失败

问题描述 投票:0回答:2

我需要从数据库导出表格以生成Excel文件,以便用户可以下载。我目前正在使用带有隐藏iframe的普通表单提交,并且端点生成包含Content-Disposition的响应。

但是,如果服务器无法生成excel文件,或者发生任何服务器端错误/异常,我需要向用户显示一条消息。

我切换到使用Jquery表单插件。虽然它确实给了我响应体,但它不会触发Save。

还有其他替代品吗?

javascript jquery forms wcf
2个回答
0
投票

在尝试了jQuery之后,Ajax和很多...终于得到了一个合适的解决方案。

jQuery ajax无法正确处理二进制响应(无法设置responseType),因此最好使用普通的XMLHttpRequest调用

Here is The Answer :-)


0
投票

使用jQuery.fileDownload.js

$.fileDownload(url,{
                    httpMethod: 'get',
                    data:$("#"+formId).serialize(),
                    prepareCallback:function(url){

                    },
                    successCallback:function(url){

                    },
                    failCallback: function (html, url) {

                    }
                 });

和服务器端添加response.setHeader(“Set-Cookie”,“fileDownload = true; path = /”);

© www.soinside.com 2019 - 2024. All rights reserved.