首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Jquery和Ajax在ASP.Net中保存文件

使用Jquery和Ajax在ASP.Net中保存文件
EN

Stack Overflow用户
提问于 2010-06-25 00:08:27
回答 2查看 11.2K关注 0票数 6

我有一个按钮,它使用jQuery和ajax调用服务器端脚本来创建文本文件,并返回以下响应:

代码语言:javascript
运行
复制
Response.ContentType = "csv";
Response.AddHeader("Content-disposition", "attachment; filename=" + fName);
Response.ContentType = "application/octet-stream";
Response.BinaryWrite(btFile);
Response.End();

但是,保存对话框不会出现。如果我不使用ajax,并使用相同的代码执行完整的回发,它就可以工作。有什么想法吗?

下面是jQuery代码:

代码语言:javascript
运行
复制
$(function() {
    $('#reportButton').click(function() {
        $.ajax({
            type: "POST",
            url: "GenerateReport.aspx",
            data: "id=0",
            success: function(){
            }
        });
    });
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-25 00:57:47

与使用AJAX ( Brian提到的AJAX不起作用)不同,您可以通过使用jQuery动态创建表单和用于发布表单的iframe来伪造表单。Here is an example I found --您应该通读注释以进行一些改进(例如使用动态创建的iframe,以防止在页面未返回正确的标题时出现问题)。

票数 3
EN

Stack Overflow用户

发布于 2010-06-25 00:10:03

我认为问题出在AJAX上,如果请求是作为JQuery外部的标准请求发出的,您将看到保存对话框。JQuery请求会将数据流式传输到回调...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3111750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档