我们有一个在新浏览器窗口中打开的页面,其中自动重定向到生成某种 XLS 文件的 ASHX 处理程序。这是使用 JavaScript 重定向完成的,即将 window.location.href
设置为 ASHX 的 URL。
虽然它可以工作并显示文件的下载对话框,但设置 window.location.href 也会清除窗口的内容,使其保持空白。这在某种程度上是有道理的,但在前台打开下载对话框时保留上一页的内容仍然会很好。是否有可能以某种方式(通过推迟重定向的执行或使用不同的技术来调用 ASHX 处理程序)?
另一个很好的事情是,如果我们可以在显示下载对话框后关闭父页面,这可以以任何方式工作吗?
最佳答案
动态创建(在 JavaScript 中)一个指向下载 ashx 位置的隐藏 iframe 并将其添加到 DOM 即可实现此目的。
关于c# - 页面渲染和 http 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5646543/