Detaillierte Erklärung der Lösung für das Problem, dass der Inhalt, auf den der src des Iframes verweist, nicht aktualisiert wird

Detaillierte Erklärung der Lösung für das Problem, dass der Inhalt, auf den der src des Iframes verweist, nicht aktualisiert wird

Problembeschreibung

html

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

js

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

h5.url entspricht einer von ueditor bearbeiteten und in der Datenbank gespeicherten Seite.

Nachdem Sie den Inhalt dieser Seite geändert und übermittelt haben, ändert sich die im Iframe dargestellte Seite nicht.

Grund

Der Inhalt im Iframe wird nur aktualisiert, wenn sich der Wert der Quelle des Iframes ändert.

Obwohl sich die Seite, die der URL meines Codes entspricht, geändert hat, hat sich die URL nicht geändert, d. h. der Wert des src des Iframes hat sich nicht geändert. Daher wird der Inhalt nicht aktualisiert.

Lösung

Nachdem die Ursache gefunden wurde, ist die Lösung ganz einfach. Überlegen Sie sich einfach, wie Sie den Wert des Iframe-Quellcodes ändern können.
Meine damalige Lösung war folgende:

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

Übergeben Sie die aktuelle Zeit nach dem Fragezeichen an die URL und das Problem ist gelöst. Dieser Wert hat keinen anderen Nutzen, als den Wert von src zu ändern.

PS: Komplette Lösung für das Problem, dass der Iframe-Cache nicht aktualisiert wird

Ich bin diese zwei Tage auf ein sehr seltsames Problem gestoßen. Eine Seite hat eine Iframe-Seite verschachtelt. Als diese Seite übermittelt und erneut zu dieser Seite gesprungen wurde, hätte die Seite im Iframe die Daten aktualisieren sollen, aber sie wurde unter IE nicht aktualisiert (unter FF kein Problem). Sie muss manuell aktualisiert werden, indem Sie F5 drücken oder eine neue Browser-Registerkarte öffnen. Andernfalls ist das Drücken der Eingabetaste im Browser dieser Seite nutzlos. Nachdem ich viele Informationen konsultiert hatte, stellte ich schließlich fest, dass es der Iframe-Cache-Mechanismus war, der Probleme verursachte. Die folgende Methode kann das Problem lösen:

<Skripttyp="text/javascript">
var Zufallszahl = Math.floor(Math.random()*100000)

dokument.schreiben('
<iframe src="http://www.freedonation.com/hunger/hunger_thankyou.php3?random='+randomnumber+'" name="aframe" width="100%" height="400"></iframe>')

</Skript>

Durch das Hinzufügen eines Parameters mit einer Zufallszahl als Anforderungswert betrachtet der Browser jede angeforderte Seite als neu und stellt sicher, dass die Iframe-Seite jedes Mal neu geladen wird.

Damit ist dieser Artikel zur Lösung des Problems abgeschlossen, wenn der Inhalt, auf den der src des Iframes verweist, nicht aktualisiert wird. Weitere Informationen zum Problem, wenn der Inhalt, auf den der src des Iframes verweist, nicht aktualisiert wird, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

<<:  Einstellungen für den Ubuntu-Boot-Autostart-Dienst

>>:  Reines CSS, um coole Neonlichteffekte zu erzielen (mit Demo)

Artikel empfehlen

Zusammenfassung der Verwendung spezieller Operatoren in MySql

Vorwort Es gibt vier Arten von Operatoren in MySQ...

So verbergen Sie die Grenze/Trennlinie zwischen Zellen in einer Tabelle

Nur den oberen Rand anzeigen <table frame=above...

JavaScript-Quellcode für Elimination

JavaScript zum Erreichen der Quellcode-Download-A...

Tomcat erhält den Clientdomänennamen des Nginx-Reverse-Proxys

Frage Nach dem Nginx-Reverse-Proxy erhält die Tom...

So rufen Sie einen HTML-Code auf mehreren HTML-Seiten gemeinsam auf

Methode 1: Skriptmethode verwenden: Erstellen Sie...

So entwickeln Sie eine Progressive Web App (PWA)

Inhaltsverzeichnis Überblick Erfordern URL der An...

js zur Realisierung der automatischen Sperrbildschirmfunktion

1. Anwendungsszenarien Es gibt eine solche Anford...

Node verwendet das Modul async_hooks zur Anforderungsverfolgung

Das Modul async_hooks ist eine experimentelle API...

Analyse der Implementierung der Nginx Rush-Kaufstrombegrenzungskonfiguration

Aus geschäftlichen Gründen kommt es häufig zu Eil...

Installieren Sie Ubuntu 18 ohne USB-Laufwerk unter Windows 10 mit EasyUEFI

1. BIOS überprüfen Überprüfen Sie zunächst, in we...

Fügen Sie dem Debian-Docker-Container geplante Crontab-Aufgaben hinzu

Mittlerweile basieren die meisten Docker-Images a...

Notieren Sie eine Falle bei der Aktualisierung der MySQL-Update-Anweisung

Hintergrund Kürzlich habe ich während eines Onlin...

Detailliertes Tutorial zur Installation von PHP und Nginx auf Centos7

Da die Anwendung von CentOS auf der Serverseite i...