在我点击导出按钮后,我能够导出excel文件,我想在响应被写入客户端后重定向页面,即response.flush()之后。我可以这么做吗?
不能同时在后台重新加载/重定向和导出文件。最好使用javascript。在导出按钮上添加一个OnClientClick
,等待x毫秒后重新加载。
<asp:Button ID="Button1" runat="server" Text="Export" OnClick="Button1_Click" OnClientClick="sleepAfterClick()" />
<script type="text/javascript">
function sleepAfterClick() {
setTimeout(function () { location.href = "http://www.google.nl" }, 2000);
}
</script>
如果您设置的超时时间太短,它将重新加载页面并且不会发生导出。所以要确保它总是比创建Excel所需的时间长。