1. ホーム
  2. Web制作
  3. HTML/Xhtml

iframeのsrcが指すコンテンツが更新されない場合の解決策を説明します。

2022-01-07 18:04:11

問題の説明

html

<iframe id="h5Content" src=""></iframe>

js

$("#h5Content").attr("src","${h5.url}");

h5.urlは、ueditorで編集され、データベースに保存されたページに対応します。

このページのコンテンツが送信された後も、iframe 内にレンダリングされるページは変更されません。

理由

iframeのsrcの値が変わったときだけ、iframe内のコンテンツが更新される。

つまり、私のコードのurlは変わったものの、urlは同じままなので、iframeのsrcの値も同じままということです。つまり、コンテンツはリフレッシュされないのです。

解決方法

原因がわかれば、解決はとても簡単です。iframeのsrcの値を変更させる方法を思いつくだけです。
その時の私の解決策は次のようなものでした。

$("#h5Content").attr("src","${h5.url}"+"?time="+new Date().getTime());


urlの後にクエスチョンマークを付けて、現在の時刻を渡すと、問題が解決します。この値は、srcの値を変更する以外には使用されません。

追記:iframeのキャッシュが更新されない問題の完全な解決法

これらの2日間は、非常に奇妙な問題は、ページが再びこのページにジャンプして送信されたときに、元のiframeのページがデータをリフレッシュする必要があります入れ子に、下のIEでの結果が(FFの下で問題ない)、あなたは手動でF5またはリフレッシュに参照する新しいブラウザタブを開く必要があり、それ以外の場合はこのページでブラウザに入力キーを押しますそれは役に立たない、情報の多くを参照した後、私はついにiframeキャッシュメカニズムは、以下の方法で解決できる台無しにされていることを知りました。

<script type="text/javascript"> var randomnumber=Math.floor(Math.random()*100000) document.write(' <iframe src="http://www.freedonation.com/hunger/hunger_thankyou.php3?random='+randomnumber+'" name="aframe" width="100%" height="400"> </iframe>'))。 </script>

乱数を含む追加パラメータを要求することで、ブラウザは要求されるたびに新しいページであると仮定し、iframe ページが毎回確実に再読み込みされるようにします。

今回は、iframeのsrcがコンテンツを指していて更新されない場合の対処法を紹介しましたが、iframeのsrcがコンテンツを指していて更新されない場合については、スクリプトハウスの過去の記事を検索するか、以下の関連記事を引き続き閲覧してください、今後ともスクリプトハウスをよろしくお願いします