gpt4 book ai didi

c# - 使用 jquery 和 c# mvc 将表数据作为文件返回

转载 作者:行者123 更新时间:2023-11-30 22:41:27 25 4
gpt4 key购买 nike

我想使用 jquery 将 Table-data 发送到服务器,然后获取 data.csv 文件进行下载

如果我像这样在浏览器中导航到 url: http://localhost:49400/File/Csv/?Text=qweerty&Filename=asdf我收到一个要下载的文件提示。

这是我调用的操作:

    public FileResult Csv(FileModel fileModel)
{
return File(Encoding.UTF8.GetBytes(fileModel.Text), "text/plain", string.Concat(fileModel.Filename, ".csv"));
}

我的 javascript 看起来像这样:

    $("table").click(function () {
$.ajax({
type: "POST",
url: "http://localhost:49400/File/Csv/",
data: {"Text": "qwerty", "Filename": "asdf"}
})
});

firebug 中的响应包含数据,但我想询问用户是否要下载它,这可能吗?

最佳答案

您不能使用 AJAX 下载文件。

相反,您可以设置 location指向文件的 URL。
只要服务器返回可下载文件(带有 Content-Disposition header ),浏览器就会显示保存对话框并且不会替换页面。

如果你想从 POST 下载文件,你可以隐藏 <form>发送 POST,然后 submit()使用 Javascript 的表单。

关于c# - 使用 jquery 和 c# mvc 将表数据作为文件返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4816718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com