Frage

Ich muss eine Zurück-Schaltfläche für meine asp.net-Website implementieren. Ich kann die Javascript-Methode verwenden, um meine Anforderungen zu erfüllen. Bei dieser Methode muss ich jedoch manchmal mehrmals auf die Zurück-Schaltfläche klicken, um zur vorherigen Seite zurückzukehren .Das liegt möglicherweise daran, dass wir auf unserer Website JQuery-Registerkarten verwenden. Um mich auf eine bestimmte Registerkarte außer der ersten Registerkarte beim Laden der Seite zu konzentrieren, verwende ich Page.ClientScript.RegisterStartupScript(....). Daher kann ich sie nicht verwenden Der Benutzer kehrt mit nur einem Klick zur vorherigen Seite zurück.

Ich habe es auch mit den im folgenden Link erwähnten asp.net-C#-Methoden versucht.http://www.dotnetcurry.com/ShowArticle.aspx?ID=89Ich kann zur vorherigen Seite zurückkehren, aber ihr Status geht verloren. Könnte mir bitte jemand bei der Erfüllung meiner Anforderungen helfen?

Einzelheiten:
Ich habe page1.aspx, page2.aspx (die JQuery-Tabs zum Anzeigen/Bearbeiten enthält).

In page1.aspx gibt es zwei Schaltflächen (Ansicht, Bearbeiten). Wenn ich auf die Schaltfläche „Ansicht“ klicke, komme ich zur Registerkarte „Ansicht“ (1. Registerkarte) von page2.aspx, und wenn ich auf die Schaltfläche „Bearbeiten“ klicke, muss ich zu Seite 2 gelangen. aspx mit geladener Registerkarte „Bearbeiten“. Beide Registerkarten „Anzeigen/Bearbeiten“ enthalten die Schaltfläche „Zurück“.

Außerdem kann ich von der Registerkarte „Ansicht“ zur Registerkarte „Bearbeiten“ navigieren, indem ich auf eine andere dort vorhandene Schaltfläche „Bearbeiten“ klicke.

Danke.

War es hilfreich?

Lösung

Die Methoden, die Sie in Ihrer Frage behandelt haben, stehen Ihnen im Wesentlichen zur Verfügung.
Du kannst entweder
1.Stellen Sie einen Link bereit, der Javascript verwendet, um den Client dazu zu bringen, zu einer Seite zurückzukehren.
2.Stellen Sie einen Link bereit, der an den Server zurücksendet und Sie zu einer Seite zurückleitet.

Ich bin mir nicht sicher, warum die in Ihrer Frage beschriebene Abfrage in Ihrem Webformular dazu führt, dass Sie mehr als einmal klicken, um zurückzugehen.Wenn Sie wissen, dass Sie immer mit zwei Klicks zurückgehen müssen, können Sie diese Methode ausprobieren:

javascript: window.history.go(-2)

Wenn Sie die Postback-/Redirect-Methode verwenden, verwenden Sie immer eine http-GET-Methode, um auch die Seite abzurufen, die Sie zurückgeben.Wenn Sie den Status beibehalten möchten, müssen Sie dies manuell tun, d. h.Speichern Sie die Werte, wenn Sie die Seite irgendwo verlassen, etwa in einer Sitzung oder in einer temporären Datenbank, und prüfen Sie beim Zurückkehren zur Seite während des Ladens der Seite, ob der Benutzer diese Werte gespeichert hat, und füllen Sie sie vorab aus.

Andere Tipps

Ich habe etwas Ähnliches gemacht (allerdings mit automatischen Weiterleitungen) und musste die Anzahl der Seiten im Auge behalten, die in meinem ViewState (oder meiner Sitzung, wenn Sie von Seite zu Seite springen) zurückgehen müssen:

Code-Behind

public void Page_Load()
{
    Session["pagesToGoBack"] = ((int)Session["pagesToGoBack"])++;
}

Aufschlag:

<input type="button" value="Back" onclick='javascript:history.go(<%= Session["pagesToGoBack"] %>);' />

Achten Sie darauf, die Sitzungsvariable bei Bedarf zurückzusetzen

Ich fühlte mich etwas dreckig, aber es hat funktioniert :)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top