

Dear Internet: Take the reset buttons off your damn forms - f00li5h
http://f00li5h.pin21.com/blog/Dear-Internet:-Take-the-reset-buttons-off-your-damn-forms.html?feed=feedburner

======
socillion
A similar annoyance is writing a well-thought out forum post, pressing submit,
and being told in some way that your session has expired.

Some sites you can go back to retrieve your post, others will just present you
with a newly empty form.

~~~
efsavage
I've actually been conditioned so thoroughly by flaky forum software to ctrl-
a-c on every post before submit that I don't even think about it and sometimes
I'm surprised when I paste later and get whacked with a giant forum post.

~~~
udfalkso
I also do this. Not just on forums, but on pretty much anything where I write
a decent amount of text. I also use a clipboard manager in conjunction with
this habit ([http://itunes.apple.com/us/app/clipboard-
history/id420939835...](http://itunes.apple.com/us/app/clipboard-
history/id420939835?mt=12)) that has saved my ass numerous times.

------
wladimir
Even better, get rid of your forms entirely, especially long forms with all
kind of questions that you really don't need the answer to. Or have fields
that are ambigious and improperly validated. Or multipage forms that have no
way of going back without losing your filled in data.

~~~
narag
Specially annoying is when the "check this if you don't want to receive spam
from us" checkbox is unchecked every time the form is shown again after a
server-side validation error.

~~~
wladimir
Oh yes, I agree. Or when you mistype the essentially human-unreadable captcha,
and have to fill in half of the fields anew.

------
almost
Here's a quick User Script to get rid of them all:

<http://almostobsolete.net/noresetbuttons.html>

It should work as an extension in Chrome or with Firefox if you have
Greasemonkey installed.

------
xd
I have a form that can be populated with records from a grid. "reset" allows
the user to clear the selected record and input new data.

~~~
y0ghur7_xxx
Wouldn't that better be served by a "new" button?

~~~
xd
From user acceptance testing we done, that gives the impression it would
create a new record from the populated data.

Edit: we use the wording "Clear" not "Reset" btw.

~~~
f00li5h
sounds like a "Please throw away everything I just typed" button to me ...

~~~
xd
Your replies have prompted me to rethink the logic. I'm going to add some
rules to the "Clear" button:

1, Hide the button whilst no records have been clicked. 2, If a record has
been clicked, clicking the button clears the form then hides itself.

Feedback appreciated.

~~~
whouweling
It may be better to not hide the button, but to disable it.

Hiding buttons in response to application state confuses the user.

(Imagine the user searching the screen for the "Clear" button which he or she
knows should be there ...)

------
frankiejr
I used to think exactly the way the author did. I'd actually get agitated when
I had to explain to the IA/Design departments _again_ why this was such a bad
idea. I won about half the time, usually with my argument driven solely by my
ego. Being vehemently against any use of it under any condition I refused to
accept that there was any appropriate use for it.

Then, I actually did some research.

First, there are instances where reset buttons have a place. From Jakob
Nielsen's post _Reset_ and _Cancel_ Buttons
(<http://www.useit.com/alertbox/20000416.html>): Reset can be useful for forms
that satisfy both of the following criteria:

\- the form is filled-in repeatedly by the same user

\- the data to be entered differs significantly from one use of the form to
the next

For cancel buttons, my "never ever" opinion was flawed because I refused to
see the reset or cancel button from the viewpoint of users unlike myself. I
spend a lot of time building these things (as most of you do). I know how
forms work. After actually sitting down with users that don't, and people that
don't spend that much time online, I found another thing to be true: People
are afraid that form data will be submitted even if you hit the back button.
They want the Cancel button to ensure their data won't be collected against
their will.

A point the article makes but then ignores is the button's layout & design.
Layout for these buttons is key. If they have to be used, they shouldn't
inputs or buttons. I've found that the best design for these is a plain text
Reset or Cancel link that's opposite the Submit or Next button. An alert is
also key. Using one can instill confidence, assuring the user that their
information will be cleared and not submitted.

However, there are a number of reasons these buttons could fade out of use,
not limited to the following:

\- Users are becoming more familiar with the way the web works. They
understand that form data isn't submitted until a submit button is clicked.
Because of this, forms are generally a trusted interactive element.

\- With the widespread use of AJAX, it's only a matter of time before form
data is collected in the user session before a submit button is clicked. It's
already being used in some places to track successful conversions & Lead
Dropouts (Sitecore OMS is one). If this becomes common, forms will revert to
being less trusted. _Reset_ and _Cancel_ buttons won't fix this, though.

The rule I follow is much the same as it's always been: Don't use _Cancel_ or
_Reset_ buttons. Though now, I understand the exceptions and plan accordingly.
Think about the target audience for each specific form and include the
appropriate functionality.

~~~
bradleyland
That's the problem with absolutes. Any time you pre-decide that something is
always good/bad, you're going to have to eat your words at some point.

~~~
r00fus
Which is why, couching phrases in neutral terminology is always best:

unproductive) Microsoft on the server sucks!

productive) Microsoft software is expensive and nobody here is an MS-expert,
migrating will cost considerable time and money without any real benefit.

------
natabbotts
Why not add the following rule to your user stylesheet? input[type=reset]
{display: none; visibility:hidden;}

That hides them all from view.

~~~
billybob
Unless someone has "cleverly" created a Javascript-powered reset button. :)
But still, good suggestion.

------
bendtheblock
Good example of implementing a feature because it's easy to do, rather than
because it has real utility. Why it's part of the HTML form spec I don't know.
Was it ever useful?

~~~
robin_reala
The actual button isn’t particularly useful but the DOM interface is. Firefox
(and other browsers?) cache DOM entries in certain situations. This is useful
if you refresh the page accidentally with a half completed comment in a text
box, but less useful if you’re building a complicated webapp that assumes an
initial state. A simple _document.forms[0].reset()_ at the top of your code
works wonders.

~~~
notJim
Oh wow, I never thought to use this this way.

------
hrktb
This seems to ignore the case where a form is pre-filled with previously
inputed info or some defaults. It feels more natural to clear the form and
write all fields with new infos than to overwrite everying field by field.

now it's a long time I haven't seen a useful reset button.

~~~
bergie
I'd use form placeholders, not values for that.

<http://diveintohtml5.org/forms.html#placeholder>

------
almost
I don't think I've seen a reset button in a while. Does anyone still use them?

~~~
xinsight
I only experience them on government and bank websites.

I can see how some naïve users might want the extra-confirmation that they are
cancelling this action – but I there's not reason for them to be visually
similar and positioned almost next to each other.

------
podperson
Anyone giving "wizards" as an example of good UI design instantly loses all
credibility with me.

------
joshuaheard
There's only one thing worse than having a Reset button: putting it next to
the Save button

[http://public.bay.livefilestore.com/y1pmfh3uGxAv9cSUByhqbbSC...](http://public.bay.livefilestore.com/y1pmfh3uGxAv9cSUByhqbbSCkirapVCTAC8pp92VsbMmx6TPvgLoib3Adyi3zGxjc2pF6_1c-MAFvY_IYW1OmBilA/SaveButton.jpg?psid=1)

~~~
r00fus
The most sad thing there is that "Start Over" is, by Fitt's Law, a "larger"
button in the sense that it's occupying an edge.

It's like a poorly designed roadway section that just happens to cause more
accidents. Bad Engineering.

------
ggchappell
A good point, one that needs paying attention to.

> There are lots of guides on website usability, go and find one for yourself.

... some of which should tell you that having an automatically scrolling
display right next to something you (supposedly) want people to _read_ , is a
bad idea.

------
wickedOne
though quite useful for 'advanced search' forms

------
Semiapies
Reset buttons can be useful in CRUD applications when you want to "clear all
changes" in an existing record - everything gets reverted to the field values
in the HTML.

Admittedly, I don't use them much, usually going with a "Cancel/Close" link
that takes the user out of the record-editing view.

~~~
r00fus
Isn't this more of a "revert changes"?

------
aj700
They still exist and I've pressed them just before thumping the desk.

Is there a greasemonkey script to get the browser to ignore them; are there
extensions for any browser to do this without greasemonkey?

or with a user stylesheet?

input[.reset]{display:none;} what is the right css? I haven't used it in a
while?

~~~
mryall
The following should work in browsers with decent CSS2 support [1]:

    
    
        input[type=reset] { display: none; }
    

You might need a !important in there immediately before the semicolon if your
user stylesheets aren't getting priority otherwise.

[1] <http://www.w3.org/TR/CSS2/selector.html#attribute-selectors>

------
tim_iles
In Messaging on the Facebook app on Android, you have Send on the left and
Clear on the right. Gets me far too often, and it's just not even necessary.
If I don't want to send what I started writing, I simply hit back. Hate it.

~~~
pbhjpbhj
What in the interface tells you that navigating away from the page will not
submit the data?

Perhaps instead of reset a "do not submit" button is required. But then if I
changed my mind about what I'm writing but still want to send a message things
get a little lame.

How can you tell for example that going back doesn't instead save the comment
as a draft (like the SMS interface on my [pretty old] Sony Ericcson phone).

I disagree with the article, I think there is a place for a reset/clear
function.

~~~
f00li5h
browsers don't save things by default. that's how they are.

the thing in the interface that tells you that you're looking at a browser is
up to you... in my mind, the address at the top, starting with <http://> is
the part of the UI that says my changes will be thrown away...

this is kinda why i'm miffed that there is an explicit "throw my changes away"
button, when that's the default behaviour

~~~
pbhjpbhj
>" _browsers don't save things by default._ "

// Depends on your browser.

~~~
f00li5h
when "submit form" and "save" are the same action, it doesn't depend on
browser...

keeping it in cache/locally/whatever is not "saving".

------
ascendant
Am I the only one who would love to somehow switch the "submit" and "reset"
buttons on this guy on some random website just to see what sort of anger you
could incite? Imagine that blog post...

------
pmr_
Dear Cats on the internet, please spellcheck your posts and proofread them
before you post your rants to the internet. Otherwise some people might think
they are unpleasant to read and possibly wont take them serious.

If you have a "related reading" section you might want to also use it to post
some links to those guides. We are here to help each other, aren't we?

And: No, I don't use reset buttons.

~~~
jrockway
_unpleasant to read and possibly wont take them serious_

Don't you mean, "won _'_ t" and "serious _ly_ "?

Glass houses, stones, etc., etc.

