Ich muss in Schritt 3 eine Bereinigung der Benutzeroberfläche durchführen.
Wie erfasse ich dieses Ereignis in Page A?
Abgesehen davon, dass Sie möglicherweise einen Cookie gesetzt haben, können Sie aufgrund einer Sicherheitsbeschränkung des Browsers nicht darauf zugreifen. Eine Umgehung wäre es, zu überprüfen, ob der Benutzer von der Seite über OnForeOnload oder OnLoun Fire weg navigiert.
Wäre es in Ihrem Szenario möglich, den URL-Hash zu verwenden, um zu Seite B zu navigieren und AJAX und jQuery zu verwenden, um die neue Seite zu laden? Daher verlässt der Browser die Seite nicht wirklich. Wenn der Benutzer zurück navigiert, wird lediglich der URL-Hashwert geändert. Sie könnten dann das hashchange
-Ereignis erfassen, um zu sehen, ob der Benutzer zurück zur Seite A navigiert ist.
Ich werde ein paar Annahmen machen, um einen Weg zu präsentieren, der nicht vollständig auf Javascript angewiesen ist:
Wenn beide Bedingungen erfüllt sind, sollten Sie eine Sitzungsvariable ! Setzen Sie die aktuelle Seite in eine currPage-Variable, die von der Sitzung auf allen zugehörigen Seiten verwaltet wird. Wenn die Seite dann geladen wird, überprüfen Sie diese und verwenden Sie sie, um entweder die Art und Weise einzustellen, wie die Seite direkt angezeigt wird, oder um einen Wert in ein verstecktes Feld / Eingabe / Div zu schreiben, das Ihr Javascript lesen und verwenden kann, um entsprechend zu reagieren. p>
Wenn Sie die JS-Lese- und Ausführungsroute verwenden, sollten Sie testen, ob die Ereignisse nach einem Load-from-Back-Button in allen Browsern ordnungsgemäß ausgelöst werden. Wie in der Link von Rionmonster erwähnt, können manchmal Onload-Ereignisse auftreten nicht feuern nach einem Zurück-Knopf. Wenn Sie Probleme sehen, dann verwenden Sie die dort erwähnten Tricks, um es zu umgehen.
Diese Art von Lösung sollte für jede Webanwendung funktionieren, die serverseitigen Code verwendet, der mit Session-Variablen interagieren kann (z. B. funktioniert es auch für PHP, Python und viele andere).
Hinweis: Es besteht die Möglichkeit, dass dies nicht ganz so elegant ist, wie es klingt. In vielen Fällen ziehen Browser möglicherweise keine neue Seite vom Server, nachdem die Zurück-Taste gedrückt wurde. Wenn sich beim Testen herausstellt, dass dies ein Problem darstellt, müssen Sie möglicherweise einige AJAX-Techniken anwenden, um die Informationen, die nach dem Zurück-Drücken der Taste in das JS geladen werden, zu füllen.
Tags und Links javascript jquery asp.net