0

ユーザーが Excel ドキュメントをダウンロードできる Web ページがあります。この機能は主に jQuery と PHP で構築されています。

ユーザーがリクエスト フォームを送信した後、画面をオーバーレイする読み込み中の gif があります。PHP が Excel ドキュメントと一緒に送信する Cookie を探す JS 間隔があります。ファイルがダウンロードされるとすぐに、JS はこの Cookie を検出し、gif を削除できます。

ユーザーがダウンロードを中止すると、問題が発生します。Cookie が受信されないため、gif は削除されません。

JSで「キャンセル」ブラウザアクションを検出する方法はありますか? または、PHP の connection_aborted() 関数でキャンセルを検出し、必要な Cookie を含む新しいヘッダーを再送信できますか?

4

1 に答える 1

0

おそらく、何らかのポーリングを行う必要があります。

  • 1 - ajax リクエストをサーバーにディスパッチし、接続がまだ行われているかどうかを確認するようにサーバーに指示します。
  • 1.1 - サーバーが肯定的な回答を返した場合は、N 秒待ってから #1 を繰り返します。
  • 1.2 - サーバーが否定的な応答をした場合、ユーザーはダウンロードをキャンセルしました。
于 2013-03-11T20:50:06.910 に答える