Sign up Sign in Samples Blog contact support
deal with back button better

Idea

 

+issues

Editing and saving a card happens via ajax, so the card can change dramatically without being reloaded. This means that if you navigate away from the card and then come back to it with a back button and get the data cached from the initial load, you see stuff that's way out of date.


If I edit anything in a slot, then move through other pages and then go back to that just edited page, I get the old content again.  If I don't notice and try to edit that, I may get the new data to edit, but then see edit conflict when I save.  Having to hit reload whenever I do "back" is a serious bug in my opinion. --Gerry


Click on /card/new and set to cardtype Ticket, then browse elsewhere and go back. The menu still shows Ticket, but you get the Basic editing interface.

 

 

+solution

 

 

+discussion

(See http://features.sheep.art.pl/BackButtonFriendliness for context:)

 

Instead of sending the new page content, respond to the POST HTTP request with a code 303 redirect to that page. The browser will then make another request, a GET this time, and save that in the browsing history: the POST will disappear from it as if it never was there, replaced with the new address. Now the users can use the “back” button safely… except for another problem.

 

that's not the problem.  we already do that.  issue is AJAX.  -efm


HTML5 offers two new JavaScript APIs, onReplaceState and onPushState, that may address most or all of the confusion that happens around the browser back button given our Edit, View, etc. tabs.

 

See http://warpspire.com/posts/url-design/ and search for "Everything should have a URL" (the following section "A link should behave like a link" also appears relevant).

  --John Abbe.....Fri Feb 11 08:02:26 -0800 2011


One design is what to do if the pagination or tab-changing someone is doing is in an inclusion. Maybe nothing, and only use these new features for tab changes of the main card? --John

  --John Abbe.....Fri Feb 11 08:04:41 -0800 2011


These may handle pagination better as well.

  --John Abbe.....Fri Feb 11 08:05:19 -0800 2011


http://www.jquery4u.com/plugins/history-back-button-plugins/

  --Ethan McCutchen.....2013-04-05 18:14:54 +0000

+relevant user stories