rotalever
2009-01-22, 17:52:59
Ich habe da eine Seite A, wo ein Formular drin ist, das per POST Daten an diese Seite liefert und somit den Inhalt der Seite A verändert. Nach dem POST wird die neue Seite A dem Benutzer präsentiert und er kann sie weiter über das Formular ändern. Soweit, so gut.
Nun ist es aber so, dass ich weitere Links auf der Seite A zu einer externen Seite X platziere. Jetzt sehe ich zwei Möglichkeiten. 1. Entweder öffnen die Links zu Seite X in einem neuen Fenster (via target="_blank"), oder 2. die Links zu X öffnen im selben Fenster und nehmen somit den Platz von A im Browserfenster ein.
Version 1 hat den Nachteil, dass unerfahrene Benutzer verwirrt werden und erfahrene Benutzer genervt sind. Also eher schlecht.
Version 2 wäre eigentlich gut, hat aber den Nachteil, dass wenn die Person den Zurück-Button im Browser drückt um von X zurück nach A zu gelangen, dass dann der Browser möglicherweise den POST request erneut auslösen will. Das ist an sich kein Problem, da durch ein zweites Auslösen des Requests keine Daten verändert werden, aber der Benutzer bekommt so eine Warnmeldung, dass Daten neu gesendet werden müssen, was wieder zu Verwirrung führen kann.
Wie könnte ich das lösen? Formular auf GET umstellen (könnte das dann wieder Probleme mit Browser-Caches bringen)? Gibt es da irgendwelche Tricks, die ich nicht kenne?
edit: Ich hab es gerade noch einmal getestet. Zumindest im Firefox bekomme ich gar keine Wahnung wegen des POST requests. Woran liegt denn das?
Nun ist es aber so, dass ich weitere Links auf der Seite A zu einer externen Seite X platziere. Jetzt sehe ich zwei Möglichkeiten. 1. Entweder öffnen die Links zu Seite X in einem neuen Fenster (via target="_blank"), oder 2. die Links zu X öffnen im selben Fenster und nehmen somit den Platz von A im Browserfenster ein.
Version 1 hat den Nachteil, dass unerfahrene Benutzer verwirrt werden und erfahrene Benutzer genervt sind. Also eher schlecht.
Version 2 wäre eigentlich gut, hat aber den Nachteil, dass wenn die Person den Zurück-Button im Browser drückt um von X zurück nach A zu gelangen, dass dann der Browser möglicherweise den POST request erneut auslösen will. Das ist an sich kein Problem, da durch ein zweites Auslösen des Requests keine Daten verändert werden, aber der Benutzer bekommt so eine Warnmeldung, dass Daten neu gesendet werden müssen, was wieder zu Verwirrung führen kann.
Wie könnte ich das lösen? Formular auf GET umstellen (könnte das dann wieder Probleme mit Browser-Caches bringen)? Gibt es da irgendwelche Tricks, die ich nicht kenne?
edit: Ich hab es gerade noch einmal getestet. Zumindest im Firefox bekomme ich gar keine Wahnung wegen des POST requests. Woran liegt denn das?