2010-12-31 14 views
0

Ich versuche zu verhindern, dass die Schaltfläche "Zurück" auf einer meiner asp.net mvc-Seiten funktioniert. Ich habe ein paar Orte gelesen, wenn ich "window.history.forward();" Es verhindert, dass die Zurück-Taste auf einer bestimmten Seite funktioniert. Dies ist, was ich auf meiner Seite getan habe:versucht zu verhindern, dass die Zurück-Schaltfläche auf einer meiner Seiten funktioniert. JavaScript

<script type="text/javascript">   
$(document).ready(function() 
{    
    window.history.forward(); 
});  
</script> 

Ich kann nicht scheinen, damit dies funktioniert. hat jemand mit dieser Methode Glück gehabt? vielleicht bin ich falsch orientiert. jede Hilfe würde geschätzt werden. Vielen Dank. Diese

+4

Als Web-Benutzer ich die Tatsache bestätigen kann, dass seine Fehler die _crap_ von mir aus, wenn eine Website versucht, mit meinem Browser-Navigation zu verwirren. Müssen Sie das wirklich tun? – David

+0

Ich mache nur herum. Ich stimme dir zu. – RayLoveless

Antwort

3

Brechen Sie nicht das erwartete Browserverhalten. Sie können die BACK-Taste nicht wirksam stoppen.

Sie sollten den Benutzer besser informieren, dass das Drücken von ZURÜCK Probleme verursacht. Sie können ein Ereignis an "beforeunload" hängen, um zu erkennen, dass der Benutzer die Seite verlässt.

See: Custom beforeunload prompt with javascript

+0

Wenn es wirklich Bedarf gibt, warum Sie dieses Verhalten stoppen möchten (zB um doppelte Aufträge zu stoppen), sollten Sie beachten, dass JavaScript deaktiviert werden kann oder nicht ausgeführt werden kann (falls ein vorheriger Fehler aufgetreten ist), und Sich auf JS vollständig zu verlassen, um zu verhindern, dass etwas passiert, ist ein sicherer Weg, um Probleme zu haben, wenn es sowieso immer passiert. – Matt

+0

Ich bin nur mit ein paar Sachen rumalbern. nichts mit Bestellungen zu tun. – RayLoveless

3

ist keine Antwort auf Ihre Frage, aber für Ihr Problem:

Ihr Problem ist wahrscheinlich nicht, wie die Zurück-Taste deaktivieren, sondern warum würden Sie das tun wollen. Es ist ein schreckliches Eindringen der Benutzeroberfläche, die Benutzer gewohnt sind. Denken Sie darüber nach, was Sie getan haben, dass dies "erfordert" und wie Sie das ändern können, um zu arbeiten, auch wenn Sie dem Benutzer erlauben, eine Seite zurückzugehen.

+0

Ich stimme zu. das ist schlecht. Ich mache nur ein paar Tests. – RayLoveless