从ashx处理程序调用处理pdf响应。 我在C#4.0中有一个通用的ashx处理程序,它为我创建了一个pdf。 我通过构建一个url发送给处理程序,在浏览器中从javascript调用此处理程序。 所以我最后打电话获取pdf是这样的:
window.open(_url, '_self', false);
我遇到的问题是,我不得不用一个旋转的gif来告诉用户pdf正在烹饪并且很快就会准备好。我只是没有一个接入点,我可以说'报告暂时正在工作'。因为当该电话回来时它会尝试打开pdf - 在我的浏览器中,它会打开要求您打开或保存pdf的框。
我可以通过另一种方式进行此调用,以便当pdf doc返回时,我可以执行一些代码来使spinny消失吗?
答案 0 :(得分:0)
您是在同一窗口或新窗口中打开PDF吗?如果是一个新窗口,快速和简单的方法是将您的链接转到“正在加载,请稍候......”页面,然后重定向到ashx页面。 “加载请等待”将保留在屏幕上,直到另一页准备好呈现。或者你可以让ashx文件首先呈现“请等待消息”,然后擦除响应并在完成后渲染PDF(更棘手)。 如果在同一页面上,您可以使用一些简单的jquery / javascript来调用一个弹出新图层的函数,其中“加载请稍候......”用户将看到该页面被重定向到呈现的PDF。
希望这会有所帮助