我在点击按钮时将报告导出到excel文件中。当用户点击按钮时,我显示消息“报告正在生成..”。生成报告后,我想隐藏消息。但是当我使用Response.End()
时,消息并未隐藏。任何人都可以告诉我如何在Response.End()
之后调用服务器端或java脚本代码或者以其他方式建议我吗?
答案 0 :(得分:3)
通常为此我们打开第二个页面,这种弹出窗口只包含数据流,因此浏览器建议保存或打开文件。
这是在另一个Response对象中完成的,因此我们仍然可以控制我们的主响应对象,而不会出现关闭或终止的问题。
显示一些代码,让我们看看你现在是怎么做的。
答案 1 :(得分:1)
使用ajax。
$.ajax({
type: 'POST',
url: url,
data: data,
success: success,
dataType: dataType
});
答案 2 :(得分:0)
答案 3 :(得分:0)
与Davide的解决方案类似;我们通过打开新页面来解决这个问题。
假设你有一个名为Report.aspx的页面,那么它也恰好有一个'export to excel'按钮。如果由于某种原因,您无法将该功能提取到静态方法中,则可以执行以下操作:
在您的页面上,当用户点击导出到Excel按钮时:
这样,您的网页仍然有效。