Deshalb möchte ich einige JavaScript-Funktion nach meinem Update aktualisiert laufen, also ich habe:Warum wird meine Funktion mehrmals nach Update ausgeführt wird geladen
function pageLoad() {
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_pageLoaded(panelLoaded);
}
function panelLoaded(sender, args) {
alert("foobar");
}
Mit dem obigen Code, wenn ich die Platte eine Aktualisierung Zeit, "Foobar" wird einmal alarmiert werden; Wenn ich das Panel das zweite Mal aktualisiere, erscheint "foobar" zweimal; das dritte Mal trigger ich das Panel zu aktualisieren, "Foobar" tauchte dreimal auf ... 4. Mal Pop 4 mal so und so weiter ....
Was verursacht das ??
Dank ~~~
Sieht so aus, als würden Sie es immer wieder in lprm.add_pageLoaded (panelLoaded) hinzufügen l. Es wird wahrscheinlich nie aus prm entfernt und jedes Mal, wenn Sie die Seite laden, wird eine neue Instanz hinzugefügt. Versuchen Sie, dort einen Haltepunkt zu setzen und zu sehen, wie viele panelLoaded-Aufrufe in prm sind. Hat Prm eine remove_pageLoaded(); Möglichkeit? – Sam
Danke, Sie sind direkt vor Ort, es ist Sys.WebForms.PageRequestManager.getInstance(). Remove_pageLoaded (panelLoaded); – eastboundr
Gut zu helfen! Viel Glück mit dem Rest Ihres Projekts. – Sam