私は、通常の入力とファイル入力を含むHTMLフォームを持っています。ユーザーがアップロードするファイルを1つ以上選択すると、フォームのtarget
属性が即座にページの非表示iframeのname
属性に変更され、フォームのaction
属性が送信するスクリプトに変更されますへのファイルアップロード要求。HTMLフォームをiframeに投稿すると、ブラウザの履歴に問題が発生する
要求されたスクリプトから、ファイルをサーバーにアップロードし、スクリプトが終了すると、iframeのonload
イベントが発生し、その後さまざまなインターフェイスが変更されます。
すべてが正しくアップロードされますが、iframe要求によってブラウザの履歴にページリクエストが追加されて意図しない結果が生じることが問題です。私は現在、次の2つの問題を発見した:
- 私は1つのファイルをアップロードした場合、その後、右のそのほかのファイルの後に、その後、 は戻るボタンを押しを、ブラウザではなくページに戻る を行くの形にとどまりますフォームの前に表示されます。
- 私が1つのファイルをアップロードしてから 戻るボタンを押すと、ブラウザは前のページの に戻りますが、その後、転送ボタンを押してフォームに戻ると、 の理由で、ファイルをアップロードするためにiframe内で実行され、フォームロード時に即座に呼び出され、意図しない他の副作用を引き起こします。
ポイントは、ブラウザの履歴にiframeリクエストを追加すると問題が発生している可能性がありますので、これを避けたいと思います。これがすべて起こるのを止める方法はありますか?
私は現在のところ、最新のバージョンのChromeでしか開発していませんが、私が使用するソリューションはIE8に戻って作業する必要があります。