Considering the W3C advice on including submit controls, is it still possible for a form to be accessible if the only way to submit it is by pressing the return/enter key?
migrated from programmers.stackexchange.com Jul 10 '12 at 16:10
1. What if the user doesn't have a keyboard?
It's a perfectly valid case. Not only some forms doesn't require interaction with a keyboard (for example a form with a couple of combo boxes, radio buttons and checkboxes), but even if the form has textboxes and textareas, it doesn't mean that at the exact moment of form submission, the user is ready to use her keyboard.
2. Unresponsive UI
When you click on a button with a mouse, there is an immediate visual feedback (unless some inexperienced designer decided to change the visual appearance of the button and missed the mouse down state).
When you press enter, there is no expected and generally accepted visual feedback. If the device is a bit slow and the network is slow too, chances are that the user will spend a few milliseconds asking herself if the form was really submitted.
3. Confusing interaction
Think about how confusing it is. You're in front of a bunch of controls. There is no submit button. What does it mean? Obviously, that the information is committed on the fly, as in a few heavy-AJAX web apps. So you close the page and discover later that all you've done were lost. From UX point of view, it's a bit... unpleasant.
A generally accepted paradigm is that if there is no submit button, the information is submitted on the fly. For example, when typing in Google Search, you get the results immediately. Note that in Google Search, the submit button, a blue one with a white magnifying glass, is still available. It makes sense: while the results are shown immediately, the user may want to indicate to the application that she is confident about the text entered in the search box and doesn't want to see the search suggestions any longer.
4. Limited discoverability
Beginners don't know that a web form may be submitted by pressing enter. By providing only one way of interaction which is neither usual nor documented, you are making it impossible for those users to use your application.
5. Contextual dependency/modes
The submission of a form through the keyboard depends on the context. What happens when the user presses the enter button if: