wake-up-neo.net

Hyperlink, um zur vorherigen Seite in asp .net zurückzukehren

Ich habe eine Seite in asp .net (http://localhost/error/pagenotfound).

Es gibt einen Link auf der Seite, auf den Sie klicken müssen, um zur vorherigen Seite zurückzukehren, von der ich gekommen bin.

<a href="#">Go Back to Previous Page.</a> 

Wie kann ich zur vorherigen Seite zurückkehren, indem ich die Historie nehme

16
user1400915

sie können dies verwenden:

<a href='javascript:history.go(-1)'>Go Back to Previous Page</a>
29
kleinohad

Wenn Sie asp.net verwenden, denken Sie daran 

javascript:history.go(-1)

und

window.history.back()

Beides bringt Sie zur Rückseite. 
Die vorherige Seite ist jedoch nicht genau die vorherige Seite.

Zum Beispiel

Angenommen, Sie befinden sich auf der Seite Default.aspx und es gibt einen asp:button
Wenn Sie jetzt auf die Schaltfläche klicken, sind Sie wieder bei Default.aspx
In dieser Situation ist Ihre vorherige Seite immer noch Default.aspx

Nehmen Sie ein anderes Beispiel
Sie haben zwei Seiten Default1.aspx und Default2.aspx
Bedingung 1 : - Taste geklickt auf Default1.aspx, die Sie zu Default2.aspx weiterleitet
ok Ihre vorherige Seite ist Default1.aspx
Bedingung 2 : - Taste auf Default1.aspx geklickt und auf derselben Default1.aspx-Seite erneut veröffentlicht
Jetzt ist Ihre vorherige Seite noch Default1.aspx


Bearbeiten

 protected void Page_Load(object sender, EventArgs e)
 {
     if( !IsPostBack )
     {
        ViewState["RefUrl"] = Request.UrlReferrer.ToString();
     }
  }

und verwenden Sie diese Schaltfläche in der hinteren Taste wie folgt

 protected void Button3_Click(object sender, EventArgs e)
 {
      object refUrl = ViewState["RefUrl"];
      if (refUrl != null)
          Response.Redirect((string)refUrl);
 }
22
शेखर

Zur vorherigen Seite wechseln

Erste Methode

<a href="javascript: history.go(-1)">Go Back</a>

Zweite Methode

<a href="##" onClick="history.go(-1); return false;">Go back</a> 

wenn wir mehr als einen Schritt zurückgehen wollen, dann erhöhen 

For going 2 steps back history.go(-2)
For going 3 steps back history.go(-3)
For going 4 steps back history.go(-4)
and so on........
7
Rizwan Gill

verwenden Sie diesen Code

    <html>
    <head>
    <script>
    function goBack()
      {
      window.history.back()
      }
    </script>
    </head>
    <body>

    <a href="#" onclick="goBack()">Back</a>

    </body>
    </html>
7
Manish Nagar

Ich habe dieses Beispiel gefunden

<input type="button" value=" &lt;-- BACK " onclick="history.go(-1);return false;">

Setzen Sie diese Seite einfach auf Ihre Seite, sie funktioniert.

4
alphan

Sie sollten ein Attribut hinzufügen, das sich wie folgt auf "onclick" bezieht:

protected void Page_Load(object sender, EventArgs e)
{
    yourButton.Attributes.Add("onClick", "javascript:history.back(); return false;");
}

protected void yourButtonClick(object sender, EventArgs e)
{
      Response.Write("Stackoverflow <br/>");
}

Hier geht es um die Verwendung einer Schaltfläche, um zur vorherigen Seite zu gelangen. Sie können sie entsprechend Ihren Änderungen ändern.

2
Stack User

Dem Beispiel von शेखर folgen

Ich würde vorschlagen, Folgendes zu tun und jeden Zyklus auf der URL während des Zurücksenden zu vermeiden.

string from = Request.UrlReferrer.ToString();
string here = Request.Url.AbsoluteUri.ToString();

if(from != here)
    Session["page"] = Request.UrlReferrer.ToString();

Klicken Sie auf Ihre Schaltfläche

object refUrl = Session["page"];
if (refUrl != null)
    Response.Redirect((string)refUrl);

Dadurch wird immer die SEITE gespeichert, von der Sie kommen.

Ich hoffe es hilft.

0
Brian Santacruz

Ich habe mir das ganze Wochenende angeschaut und habe die Antwort nicht gefunden, nach der ich gesucht habe. Das Problem ist nach einem Postback history.go (-1); geht nicht dorthin zurück, wo Sie hin möchten - dh die Seite, die Sie dorthin gebracht hat (mit den vorgenommenen Änderungen).

Verwendung von Request.UrlReferrer.ToString (); wird die Seite neu laden, zu der Sie zurückkehren, und Sie sind möglicherweise wie ich und möchten keine Änderungen verlieren, die an der Seite vorgenommen wurden. Oberhalb von Rizwan Gill im Jahr 2013 kam die Antwort, dass Sie 2, 3 oder 4 Seiten zurückkehren möchten, aber er hat keine gute Möglichkeit dafür gegeben.

Der beste Weg, dies zu tun, ist die Verwendung eines Popup-Modals für Ihre Seite, wenn diese aufgerufen wird, wenn Sie die aufrufende Seite schreiben, aber wenn Sie dies auf diese Weise tun möchten und über eine Zurück-Schaltfläche verfügen, müssen Sie sich jeweils daran erinnern postback und zählen sie.

Beginnen Sie also mit Ihrem versteckten Feld (in Ihrer ASPX-Datei):

    <asp:hiddenfield id="fldPostbackCount"
        value="0" 
        runat="server"/>

Erhöhen Sie dann den Wert mit jedem Postback (in Ihrer ASPX.VB-Datei): 

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
    If Not IsPostBack Then
        fldPostbackCount.Value = 1
    Else
        fldPostbackCount.Value = Int32.Parse(fldPostbackCount.Value) + 1
    End If

End Sub  '  Page_Load() 

(Ich bin sicher, dass die .cs-Leute die Konvertierung in C auf diese Weise erledigen können.) 

Nun zurück zu Ihrer ASPX-Datei, müssen Sie eine Schaltfläche "Verlauf" haben:

    <a href="javascript:history.go(-<%: fldPostbackCount.Value %>)" title="Back to Previous Page">Back to Previous Page</a>
0
Mark Ludwinski