Gestion du double-clic côté client avec JavaScript

L'objectif principal de la fonction de gestion du double-clic consiste à éviter le traitement d'une même requête deux fois. Pour ce faire, l'implémentation côté serveur identifie la requête répétée ; toutefois, il est recommandé d'implémenter la gestion du double-clic avec JavaScript côté client.

Remarque : Bien que l'attribut de cette référence soit appelé "double-clic", il est important de noter qu'il prend également en charge la fonction clics multiples.Autrement dit, la prise en charge n'est pas limitée à exactement un clic supplémentaire, mais est de nombreux clics supplémentaires.

Dans le contenu HTML envoyé au client et qui permet de soumettre des requêtes, un petit JavaScript de validation peut être utilisé pour vérifier si la requête a déjà été soumise et si tel est le cas, pour empêcher le client de la soumettre à nouveau. Cette fonction de validation JavaScript vérifie l'indicateur global pour savoir si la requête a été soumise et si tel est le cas, ne la soumet pas à nouveau. Si la fonction de gestion du double-clic est désactivée sur le serveur, il est fortement recommandé de configurer les pages JSP et HTML de sorte qu'elles implémentent cette prévention JavaScript.

L'exemple suivant empêche le formulaire d'être soumis plus d'une fois avec l'action onSubmit() de l'objet de formulaire :


...
<script>
var requestSubmitted = false;
       function submitRequest() {
              if (!requestSubmitted ) {
                     requestSubmitted  = true;
                     return true;
              }
              return false;
       }
</script>
...
 
       <FORM method="POST" action="Logon"
onSubmit="javascript:submitRequest()">
              ......
       </FORM>