1

ヘッダーとコンテンツの 2 つのフレームに分割された jsp ページ home.jsp があります。私のコンテンツフレームには、このようなサーブレットを呼び出すリンクがあります

<a href="downloadAttach">download</a>

JavaScript 関数の dowloadAttach には、次の行があります。

window.location="RetrieveFile.display";

RetrieveFile は、共有の場所からドキュメントを取得して出力ストリームに書き込むサーブレットであるため、添付ファイルを保存/キャンセル/開くオプションを取得できます

さらに、コンテンツ フレーム内のすべてのページには、ページがブラウザーにキャッシュされないようにするための次のコード行があります。

window.onbeforeunload=function(){window.location.replace("<%= request.getcontextPath()%>/home.jsp")}

さらに、home.jsp に以下のスクリプトを追加して、home.jsp がアンロードされるたびに警告メッセージが表示されるようにします。スクリプトは次のようになります。

window.onbeforeunload=function(){return "sure you want to go away"};

ここで、Google で home.jsp に移動し、添付ファイルのダウンロード リンクをクリックするとします。添付ファイルは正しくダウンロードされます。その後、フォームを送信するか、フォームを閉じてからブラウザを押し戻すなど、ページを更新するjspでアクションを実行すると、home.jspがアンロードされ、Googleに移動し、ポップアップメッセージは表示されません示します。まったく同じ手順を実行し、ブラウザを更新または閉じると、メッセージが表示されます。また、キャッシュ制御のためにサーブレットにヘッダーを設定しようとしましたが、違いはありません。私はie8を使用しています

4

1 に答える 1