Erwing Asked: 2020-03-12 11:49:14 +0800 CST 2020-03-12 11:49:14 +0800 CST 2020-03-12 11:49:14 +0800 CST 如何通过ajax导出到excel? 772 我目前拥有的使其适用于我的解决方案使用 windows.location,我希望使用 ajax 来获得响应,从而实现在下载开始时看到的加载,并在下载完成时出现警告消息。 c# 1 Answers Voted Best Answer Leandro Tuttini 2020-03-12T12:10:17+08:002020-03-12T12:10:17+08:00 如果您正在实现 webapi,则必须返回 FileResult 或创建自定义 ActionResult 在 MVC 中导出到 Excel 您将看到他如何创建ExcelResult分配Response受让人的位置ContentType,并且您还将传递要发送的 excel 的渲染 public class ExcelResult : ActionResult { public string XMLStream { get; set; } public string FileName { get; set; } public override void ExecuteResult(ControllerContext context) { context.HttpContext.Response.Buffer = true; context.HttpContext.Response.Clear(); context.HttpContext.Response.AddHeader("content-disposition", "attachment; filename=" + FileName); context.HttpContext.Response.ContentType = "application/vnd.ms-excel"; context.HttpContext.Response.Write(XMLStream); } } 关于 ajax,您不能通过 ajax 下载文件。有jquery.fileDownload等库模拟用ajax下载文件的效果
如果您正在实现 webapi,则必须返回 FileResult 或创建自定义 ActionResult
在 MVC 中导出到 Excel
您将看到他如何创建
ExcelResult
分配Response
受让人的位置ContentType
,并且您还将传递要发送的 excel 的渲染关于 ajax,您不能通过 ajax 下载文件。有jquery.fileDownload等库模拟用ajax下载文件的效果