Wie aktualisiere ich eine Seite in ASP.NET? (Lassen Sie es sich per Code neu laden)
Ich möchte Response.Redirect () lieber nicht verwenden, da ich nicht weiß, auf welcher Seite ich mich befinde, da sie sich in einem Benutzersteuerelement in einem Webpart in Sharepoint befindet.
Antworten:
Sobald die Seite für den Client gerendert wurde, haben Sie nur zwei Möglichkeiten, eine Aktualisierung zu erzwingen. Eines ist Javascript
Das zweite ist ein Meta-Tag:
Sie können die Aktualisierungsintervalle auf der Serverseite festlegen.
quelle
Server.TransferRequest
.In meinen Benutzersteuerelementen mache ich nach dem Aktualisieren der Daten Folgendes:
Dadurch wird sichergestellt, dass die Seite neu geladen wird und über ein Benutzersteuerelement einwandfrei funktioniert. Sie verwenden RawURL und behalten
Request.Url.AbsoluteUri
keine GET-Parameter bei, die möglicherweise in der Anforderung enthalten sind.Sie möchten wahrscheinlich nicht verwenden
__doPostBack
:, da sich viele Aspx-Seiten beim Postback anders verhalten.quelle
Das mag spät sein, aber ich hoffe, es hilft jemandem, der nach der Antwort sucht.
Sie können dazu die folgende Zeile verwenden:
Vermeiden Sie die Verwendung,
Response.Redirect
da dies die Schritte im Prozess erhöht. Was es tatsächlich tut, ist:Wie Sie sehen können, dauert das gleiche Ergebnis 2 Fahrten anstatt 1 Fahrt.
quelle
.Text
in aTextBox
oder den.Visible
Status von aButton
.Versuche dies:
quelle
Verwenden Sie die location.reload () -Methode von Javascript .
quelle
Es gibt verschiedene Methoden, um die Seite in asp.net zu aktualisieren, wie ...
Java Script
Code dahinter
Meta-Tag
Seitenumleitung
quelle
Wenn Sie keine vollständige Seitenaktualisierung durchführen möchten, können Sie das, was Sie aktualisieren möchten, in ein UpdatePanel einbinden und anschließend ein asynchrones Postback durchführen.
quelle
Ich persönlich muss sicherstellen, dass die Seite den Status beibehält, damit alle Textfelder und anderen Eingabefelder ihre Werte behalten. Wenn Sie eine Meta-Aktualisierung durchführen, ist dies wie ein neuer Beitrag. IsPostBack ist immer falsch, sodass sich alle Ihre Steuerelemente wieder im initialisierten Zustand befinden. Um den Status beizubehalten, setzen Sie dies am Ende Ihres Page Load (). Erstellen Sie eine versteckte Schaltfläche auf der Seite, an die ein Ereignis angeschlossen ist, z. B. butRefresh mit dem Ereignis butRefresh_Click (...). Dieser Code setzt einen Timer auf der Seite, um ein Postback auszulösen, genau wie ein Benutzer selbst auf die Schaltfläche "Aktualisieren" geklickt hat. Alle Status und Sitzungen bleiben erhalten. Genießen! (PS: Möglicherweise müssen Sie die Direktive in den @ Page-Header EnableEventValidation = "false" einfügen, wenn Sie beim Postback einen Fehler erhalten.
quelle
Das kannst du nicht machen. Wenn Sie eine Umleitung (oder eine andere Servertechnik) verwenden, senden Sie niemals die eigentliche Seite an den Browser, sondern nur Umleitungsseiten.
Sie müssen dazu entweder ein Meta-Tag oder JavaScript verwenden, damit Sie die Seite neu laden können, nachdem sie eine Weile angezeigt wurde:
quelle
Fügen Sie
page_load
Folgendes hinzu:quelle
quelle
Sie können dieses Problem auf zwei Arten lösen: 1) Nach dem Head-Tag
2) Wenn Ihre Seite kein Head-Tag hat, müssen Sie zur Implementierung Javascript verwenden
Mein Kontakt:
http://gola.vn
quelle
Die einzige korrekte Möglichkeit, eine Seitenaktualisierung durchzuführen, war JavaScript. Viele der wichtigsten .NET-Antworten sind für mich fehlgeschlagen.
Fügen Sie den obigen Code in das Ereignis "Schaltfläche klicken" oder an eine beliebige Stelle ein, an der Sie die Seitenaktualisierung erzwingen möchten.
quelle