0

ashx ハンドラー呼び出しからの pdf 応答の処理。C# 4.0 には、pdf を作成する汎用の ashx ハンドラーがあります。ハンドラーに送信する URL を作成することにより、ブラウザーで JavaScript からこのハンドラーを呼び出します。したがって、pdfを取得するための私の最後の呼び出しは次のとおりです。

 window.open(_url, '_self', false);

私がこれに抱えている問題は、pdfが調理中であり、すぐに準備ができることをユーザーに伝えるために、回転するgifをアップするしかないということです。「レポートはしばらくお待ちください」と言うことができるアクセス ポイントがありません。その呼び出しが戻ってくると、pdf を開こうとするため、私のブラウザでは、pdf を開くか保存するかを尋ねるボックスが表示されます。

この呼び出しを行う別の方法はありますか?それにより、pdf ドキュメントが戻ってきたときにコードを実行して、スピニーをなくすことができますか?

4

1 に答える 1

0

PDF を同じウィンドウで開いていますか、それとも新しいウィンドウで開いていますか? 新しいウィンドウの場合、すばやく簡単なのは、リンクを「読み込み中です。しばらくお待ちください...」ページに移動し、ashx ページにリダイレクトすることです。他のページがレンダリングされる準備が整うまで、「読み込み中です。しばらくお待ちください」というメッセージが画面に表示されたままになります。または、ashx ファイルで最初に「メッセージをお待ちください」をレンダリングしてから、応答を消去し、完了したら PDF をレンダリングすることもできます (ややこしい)。同じページにある場合は、単純な jquery/javascript を使用して、ページがレンダリングされた PDF にリダイレクトされるまでユーザーに表示される「読み込み中です。お待​​ちください..」という新しいレイヤーをポップアップする関数を呼び出すことができます。

お役に立てれば

于 2012-08-06T14:22:23.277 に答える