Platform mechanism to prevent button double-clicking

By Gonçalo Veiga on 24 Sep 2010
It's always a problem when users click on buttons more than once, duplicating server requests.
There are solutions for both client and server-side.
Rui Félix31 Jan 2014
This hassle exists for such a long time and happens on so many projects!
Everyone should do a 'like' on this idea!
Davide Marquês25 Jan 2014
The platform should provide a simple way to prevent duplicate action submissions (enabled by default but configurable for asynchronous actions).

Screens actions that are slow tend to have people clicking "Save"/submit multiple times because they aren't sure they already clicked.

The existing workaround based on javascript should be implemented by the platform itself.

Note: this idea came from this discussion:
http://www.outsystems.com/forums/discussion/11270/preventing-multiple-execution-of-save-action/

Merged from 'Preventing multiple execution of Save action' (idea created on 2014-01-25 13:09:12 by Davide Marquês), on 2014-02-03 10:16:48 by Davide Marquês
José Antunes3 Feb 2014
Hi,

Same idea as this one. These ideas should be merged to sum up the likes :)

Cheers,
JA

Merged from 'Preventing multiple execution of Save action' (idea created on 2014-01-25 13:09:12 by Davide Marquês), on 2014-02-03 10:16:49 by Davide Marquês
João Melo15 Jul 2014
As a workaround... You can temporarily disable the button after click, and enable aggain after a timeout. A two-lines javascript code would make this happen.

Isn't this accomplished with the .Button.Load classes, from SilkUI?

Tiago Bernardo16 Dec (2 days ago)

Leonardo,

Classes ".Button.Load" won't work on buttons.

Quote from the SilkUI site (https://silkui.outsystems.com/Patterns_Web.aspx#Web_Controls_Buttons):

This class won't work on platform buttons. Adding the class Load, avoids multiple user clicks while the request is being processed.

Tiago Bernardo16 Dec (2 days ago)

And also:

How to use

To create these custom buttons use links, instead of buttons, and add the provided classes - Button, along with Success, Cancel, Link, Danger, Icon or Small. To use icons within the custom button wrap the RichWidget’s Icon block with the link. To enable the Loading behaviour, which prevents consequent clicks while the request is undergoing, add the Load class.

leonardo.fernandes13:58 (5 hours ago)

Hi Tiago. And why can't you use a link instead of a button, as the SilkUI documentation suggests?