471,338 Members | 1,309 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,338 software developers and data experts.

Disabling the browser's 'Back' button

When designing a webpage, is there a way to disable the back button? It
must be possible.

I am asking because there are certain web applications that I have used that
require the user to never press the back button from certain screens. If
the back button is pressed, it will bill for charges, even if the user is
pressing the back button as a way of canceling. Another example would be
Mambo CMS -- if you click the back button on certain screens it checks out
the content and you have to do a 'global checking' to unlock it which can
cause other problems if not done right.

I'm hoping there is a way to fix this. Otherwise, maybe there is a way to
get rid of the back button with javascript without opening a new window? I
don't want to get rid of the toolbar, but just to disable that feature.

Any tips would be appreciated.


Jul 23 '05 #1
9 3471
On Sun, 26 Sep 2004 20:32:40 GMT, jcnews wrote:
..is there a way to disable the back button?


<http://www.jibbering.com/faq/#FAQ4_2>

--
Andrew Thompson
http://www.PhySci.org/codes/ Web & IT Help
http://www.PhySci.org/ Open-source software suite
http://www.1point1C.org/ Science & Technology
http://www.lensescapes.com/ Images that escape the mundane
Jul 23 '05 #2
On Sun, 26 Sep 2004 20:32:40 GMT, "jcnews" <jc****@earthlink.net>
wrote:
When designing a webpage, is there a way to disable the back button? It
must be possible.
No, and it's a FAQ, so please see the FAQ at http://jibbering.com/faq/

Jim.
I am asking because there are certain web applications that I have used that
require the user to never press the back button from certain screens. If
the back button is pressed, it will bill for charges, even if the user is
pressing the back button as a way of canceling.


That's a bad e-commerce site, and with an organisation so negligent, I
wouldn't trust them with my credit card details - keep away!

Jim.
Jul 23 '05 #3
jcnews wrote:
When designing a webpage, is there a way to disable
the back button? It must be possible.
You can't so much disable the back button but you can take action that
will break it for some users. Though the fact that you cannot break it
for all users renders the attempt futile.
I am asking because there are certain web applications
that I have used that require the user to never press
the back button from certain screens. ...
There are a surprising number of web application authors who operate
with a disregard for (or ignorance of) the nature of both HTTP and their
web browser clients.

<snip> I'm hoping there is a way to fix this.
It is a matter of designing server-side code that is suited to being
operated over a stateless protocol form a web browser client. Where the
use of a 'back' facility and the re-submission of a form for an action
that has already happened, does not result in the server-side code
attempting something stupid. (it is also off topic for this group)
Otherwise, maybe there is a way to get rid of the back
button with javascript without opening a new window?
You cannot even get rid of the 'back' facility by opening a new window.
I don't want to get rid of the toolbar, but just to
disable that feature.
The tool bar is not the only way of activating the 'back' facility
anyway.
Any tips would be appreciated.


Look into server-side sessions and think about how they can be used to
keep track of the state of the user's interaction with the server.

Client side scripting can contribute nothing to the solution of this
problem.

Richard.
Jul 23 '05 #4


Jim Ley wrote:
On Sun, 26 Sep 2004 20:32:40 GMT, "jcnews" <jc****@earthlink.net>
wrote:

When designing a webpage, is there a way to disable the back button? It
must be possible.

No, and it's a FAQ, so please see the FAQ at http://jibbering.com/faq/


No? I have visited a number of pages where the back button doesn't
work, how do they do it??

Frances

Jul 23 '05 #5
On Sun, 26 Sep 2004 20:38:59 -0400, Frances Del Rio wrote:
No, and it's a FAQ, so please see the FAQ at http://jibbering.com/faq/
No? I have visited a number of pages


a) UA?
..where the back button doesn't work, ..


Probably a)

--
Andrew Thompson
http://www.PhySci.org/codes/ Web & IT Help
http://www.PhySci.org/ Open-source software suite
http://www.1point1C.org/ Science & Technology
http://www.lensescapes.com/ Images that escape the mundane
Jul 23 '05 #6
On Sun, 26 Sep 2004 20:38:59 -0400, Frances Del Rio <fd***@yahoo.com>
wrote:
Jim Ley wrote:
On Sun, 26 Sep 2004 20:32:40 GMT, "jcnews" <jc****@earthlink.net>
wrote:

When designing a webpage, is there a way to disable the back button? It
must be possible.

No, and it's a FAQ, so please see the FAQ at http://jibbering.com/faq/


No? I have visited a number of pages where the back button doesn't
work, how do they do it??


Define doesn't work - maybe it was the suggestion in the FAQ to use
replace on every link, maybe it wasn't that it didn't work, but it
didn't go where you expected - IE has some wrong behaviour (in HTTP
terms) whereby it makes new requests when revisiting pages - it
doesn't really disable the back-button.

Jim.
Jul 23 '05 #7


Jim Ley wrote:
On Sun, 26 Sep 2004 20:38:59 -0400, Frances Del Rio <fd***@yahoo.com>
wrote:

Jim Ley wrote:
On Sun, 26 Sep 2004 20:32:40 GMT, "jcnews" <jc****@earthlink.net>
wrote:

When designing a webpage, is there a way to disable the back button? It
must be possible.
No, and it's a FAQ, so please see the FAQ at http://jibbering.com/faq/


No? I have visited a number of pages where the back button doesn't
work, how do they do it??

Define doesn't work - maybe it was the suggestion in the FAQ to use
replace on every link, maybe it wasn't that it didn't work, but it
didn't go where you expected - IE has some wrong behaviour (in HTTP
terms) whereby it makes new requests when revisiting pages - it
doesn't really disable the back-button.


ok, next time I see one I will post.. u click on 'back' button and
either it's ignored or simply refreshes current page... I always
assumed this was done w/JavaScript, that it had to do w/history object..

Jul 23 '05 #8
In article <2r*************@uni-berlin.de>, fd***@yahoo.com enlightened us
with...


ok, next time I see one I will post.. u click on 'back' button and
either it's ignored or simply refreshes current page... I always
assumed this was done w/JavaScript, that it had to do w/history object..


My guess is that if you pulled down the arrow next to the back button and
went back *two* pages, you'd get the content back. ;)

This is easily done with a simple redirect (server-side) or a replace
(client-side), but it doesn't "break" the back button. The button still
functions and the history is not lost.

The history object is not readable or writable by normal client-side JS. The
only thing you can do is use forward and back with scripting.

Server-side code should always allow for refreshing the page (there are
various ways to do that). That said, sometimes people inherit bad code and
need an interim hack. If that is the case, and javascript is guaranteed
(intranet) you can simply replace the contents of the current window,
overwriting history (location.replace). Back will still function, but it will
take it to the previous page. You may be seeing sites doing that, too.
This should by no means be considered a permanent fix, IMO. Solid server-side
code negates the need for any of these types of hacks.

--
--
~kaeli~
Acupuncture is a jab well done.
http://www.ipwebdesign.net/wildAtHeart
http://www.ipwebdesign.net/kaelisSpace

Jul 23 '05 #9
On Sun, 26 Sep 2004 20:32:40 GMT, "jcnews" <jc****@earthlink.net>
wrote:
When designing a webpage, is there a way to disable the back button? It
must be possible.


See RFC 2616 paragraph 13.13 for what the standard requires.
http://www.ietf.org/rfc/rfc2616.txt?number=2616

It's a bad idea to attempt to block browser Back button (which won't
stop management or customers from asking for it, I learned the hard
way.) I make my form processing resilient to this, treating it as a
race conditon. In past, I have put in a hidden input that was set to
Date/getTime(). Server side could determine if it was a repost by
seeing if it already got that timestamp from that client (KLUGE, I
know.)

---Bruce Wisentaner
---No spam accepted
Jul 23 '05 #10

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

2 posts views Thread by Jeelz | last post: by
2 posts views Thread by Kapil Jain | last post: by
5 posts views Thread by ns21 | last post: by
11 posts views Thread by shankwheat | last post: by
3 posts views Thread by =?Utf-8?B?cHJhZGVlcF9UUA==?= | last post: by
reply views Thread by rosydwin | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.