Frage

Ich bin mit window.onback = history.forward (); zu verhindern, dass Benutzer Daten erneut einreichen. Ich weiß, es ist ein Hack, und ich es auch nicht mögen, aber das ist nicht das, was diese Frage ist. Das Problem ist, dass der Code anderer Seiten verhindert mit dem Code auf die Seite von zurückreicht. Lassen Sie mich klarstellen.

PageA.aspx hat den JavaScript-Code in ihm. Der Benutzer über PageA, schlägt zurück, und nichts passiert. Das ist gut. Nun klickt der Benutzer auf einen Link zu PageB.aspx, das tut nicht den Code haben. Wenn der Benutzer die Zurück-Schaltfläche klickt, die sie zu PageA.aspx nehmen sollte, tut es nicht. Es zeigt das gleiche Verhalten wie wenn SeiteB den JavaScript-Code nicht rückwärts hatte.

Hier ist, wie ich es in PageA.aspx umgesetzt:

<script type="text/javascript">
window.onback = history.forward();
</script>

Ich habe bestätigt, dass dieser Code nur in PageA.aspx ist und nicht in dem Master enthält, oder irgendetwas anderes. Dies ist eine ASP.NET 2.0-Anwendung ausgeführt in Sharepoint 2007. Der Browser ist IE7.

Irgendwelche Ideen?

War es hilfreich?

Lösung

Ich habe nicht die Zeit (oder SharePoint07) Sie Umgebung und Szenario zu reproduzieren, aber was ist, wenn Sie einen Ort-Test in der JavaScript setzen?

So etwas wie folgt aus:

<script type="text/javascript">
if (window.location.indexOf("PageA.aspx", 0) > 0)
{
   window.onback = history.forward();
}
</script>

Ich kann nicht erklären, was passiert ist, aber das sollte den Umfang der Hack helfen zu begrenzen.

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