私は ajax 対応のページで作業しており、ページを更新せずにファイルをダウンロードする必要があります。これを行うために、ページに非表示の iframe を追加しました。
<iframe id="iframeDownload" style="display:none"></iframe>
ファイルをダウンロードする必要があるときは、次のようなスクリプトを使用します。
$("#iframeDownload").attr("src","url to server");
サーバー側では、いくつかのロジックを実装する必要があり、サーバー側の問題を示すためにいくつかの異なる http ステータス コードを返す場合があります。ファイルが正常にダウンロードされた場合は、問題ありません。しかし、サーバー側で問題が発生した場合に備えて、これらの http コードをキャッチする必要があります。
$("#iframeDownload").load(function(e){
// get http status code and act accordingly but I cannot get it
});
返信ありがとうございます。
更新: 私の意見では、iframe 経由でダウンロードすると、ブラウザーは要求の送信と応答の受信を処理し、応答本文のみを iframe に渡します。したがって、JavaScript は応答ヘッダーを読み取ることができません。このケースは、ページの読み込みに似ています。私が間違っている場合は、私を修正してください。