我正在尝试通过 MVC 中的 ajax 调用实现文件下载功能。调用控制器方法后我总是有一个“parseerror”,有人能解释一下为什么吗?我的阿贾克斯:tab.on("click", ".FileDownload", function (e) { //$('#uploadStatus').html("ok"); var tr = $(this).closest("tr"); var id = tr.data("id"); $.ajax({ type: "POST", url: "/File/FileDownload", //contentType: false, //processData: false, //dataType: "json", data: { fileId: id }, success: function (data) { $('#uploadStatus').html("ok"); }, error: function (err) { alert(err.statusText); } });});和控制器:[HttpPost] public FileResult FileDownload(int? fileId) { FileDBEntities db = new FileDBEntities(); tblFile file = db.tblFiles.ToList().Find(p => p.id == fileId.Value); return File(file.Data, file.ContentType, file.Name); }使用剃须刀中的简单下载链接它可以工作,但不能使用 ajax。我在这里做错了什么?
1 回答
开满天机
TA贡献1786条经验 获得超13个赞
为什么不简单使用
tab.on("click", ".FileDownload", function (e) {
//$('#uploadStatus').html("ok");
var tr = $(this).closest("tr");
var id = tr.data("id");
window.location = window.location.origin + '/File/FileDownload?fileId=' + id;
});
[HttpGet]
public FileResult FileDownload(int? fileId)
添加回答
举报
0/150
提交
取消