fan888888 2022-01-26 15:07 采纳率: 50%
浏览 15

使用ajax提交了Form,返回的是MVC中的FileResult,但是返回到前端,却没有跳出下载界面

如下, 提交完成后,返回的是MVC中的FileResult,一个Excel文档,应该是会直接跳出下载保存文件的界面,但是无法弹出,进入success函数后,data也是一大堆字符串,我有尝试将其作为文件流转换,但是失败,这个根本不是文件流,请问如何才能将返回的FileResult结果,在前端将其弹出下载界面
function test() {
var form = new FormData(document.getElementById("form"));

    $.ajax({
        url: "@Url.Action("test", "formtest")",
        type: "post",
        data: form,
        processData: false,
        contentType: false,
        success: function (data) {
          
          

        },
        error: function (e) {
            alert("错误!!");
         //   window.clearInterval(timer);
        }
    });
 
}
  • 写回答

1条回答 默认 最新

  • ts_shinian_web 2022-01-26 15:31
    关注

    可以参照blob下载方式,需要在请求时指定 responseType: 'blob',配置好后,使用创建下载链接,与a标签进行下载,下面是我的一个请求例子https://blog.csdn.net/weixin_53445649/article/details/117548096?spm=1001.2014.3001.5502

    评论

报告相同问题?

问题事件

  • 创建了问题 1月26日

悬赏问题

  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 github训练的模型参数无法下载
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题