Ne mettez pas de bouton ‘Reset’ dans vos formulaires !

C’est étrange de constater comme les habitudes ont la vie dure… Prenez par exemple les boutons ‘Reset‘ sur les formulaires : Je ne sais pas qui a eu cette idée folle, mais elle est incroyablement tenace.

J’ai déjà eu de nombreuses discussion à ce sujet, mais je profite du dernier édito de Jaokb Nielsen (Top-10 Application-Design Mistakes) pour vous le redire : Ne mettez pas de bouton ‘Reset‘ dans vos formulaires.

Qui a envie de supprimer toutes les données saisies d’un coup ? Qui va s’offusquer de ne pas se voir proposer cette fonction ? Quelle est l’intérêt pour vous ?

Donc une dernière fois : Ne mettez pas de bouton ‘Reset‘ dans vos formulaires.

Et ça sera mon dernier mot ! A vrai dire, je n’ai plus la force d’argumenter sur ce point, je me demande si je ne devrais pas fermer les commentaires pour ce billet…

55 commentaires sur “Ne mettez pas de bouton ‘Reset’ dans vos formulaires !

  1. Ci-après le code d’un formulaire quelque peu amélioré pour ne pas masquer définitivement les champs et fonctionner avec les touches de tabulation sur les navigateurs récents les plus courants.

    Formulaire

    body {margin:0px;padding:40px;font:18px Georgia,Garamond,Serif;text-align:center;background:#ffc;color:#600;}
    #page {display:block;margin:0px auto;padding:20px;border:0px;width:320px;background:#c96;}
    h1 {margin:15px;padding:0px;font-weight:bold;font-size:130%}
    input {padding:3px;border:1px solid #000;font:16px Georgia,Garamond,Serif;background:#ffc;}
    #page a {text-decoration:none;color:#600}
    #page a:hover {text-decoration:underline;font-weight:bold;}

    var t_f=null;
    function fcs(t){
    if (t.value==t.defaultValue) {t.value= »;if (document.selection && document.selection.clear) document.selection.clear()}
    return false;
    }
    function blr(t){
    if (t.value== ») {t.value=t.defaultValue;}
    return true;
    }

    Pour denouveaux formulaires

  2. Mettez des boutons RESET dans vos formulaires mais comme pour toutes actions destructrices :
    – Soit vous proposez un système d’annulation
    – Soit vous demandez une confirmation

    Le bouton RESET est utile, c’est juste l’absence du système de sauvegarde contre l’erreur qui est absurde.

    Après il faut bien sûr que le bouton soit explicite, qu’il ne ressemble pas au bouton de soumission, qu’il soit bien placé, que les messages soient explicites, etc…

  3. En ce qui me concerne je n’utilises jamais la fonctions RESET et en cas d’erreur je remet toujours les valeurs entrées(PHP) pour ne pas avoir a les retaper…Mais le RESET me persécute quand même ,en effet je me suis aperçu dans un de mes formulaires que lorsqu’on le validait avec la touche Enter (ce qui est fréquent vu que le dernier champs est un captcha) et ben ça me faisait un RESET ! j’aimerais avoir la possibilité de le désactiver totalement !

  4. Ben vous savez pas de quoi vous parlez, dans le cadre de formulaires pour éditer des données pré existante, le reset est absolument fabuleux …

    Le reset n’efface pas les champs, il remet les champs a leur valeurs initiales .. donc si tu a des value= » », le reset prends toute sa valeur.

    Si la valeur par défaut d’un champ est 4 .. après avoir modifié tu a mis 8 … tu fais reset, ça remet 4 et pas un blanc.

    A bon entendeur !

  5. Et si tu as 10 champs à modifier et que tu t’es trompé au dernier, un reset remet toutes les valeurs par défaut. Il vaut mieux prévoir un système d’annulation plus « intelligent » (annuler un seul champ à la fois ou annuler la dernière modification uniquement). Et ça devrait être déjà implémenté par les navigateurs.

  6. un bouton supprimé intégré dans l’input comme ce que l’on retrouve dans l’iphone est plutot interessant et tres fonctionnel . existe il sous ASP ou php ce meme système ?

  7. +1 pour le boycotte du bouton RESET .
    Un bon document.getElementByID(«  »).focus();
    Permet de pointer le champs mal remplis.

    if (nom == «  »)
    {
    alert(« Veuillez renseigner le champs : NOM »);
    check_0.innerHTML = «  »;
    document.getElementById(« Nom_INPUT »).style.backgroundColor= »#FFFF99″;
    document.getElementById(« Nom_INPUT »).focus();
    return false;
    }
    else
    {
    check_0.innerHTML = «  »;
    document.getElementById(« Nom_INPUT »).style.backgroundColor= »#FFFFFF »;

    }

  8. Le bouton reset est bien utile dans le cas où l’on souhaite annuler les modifications à des champs préremplis. (lors d’une précédente validation, ou simplement pour mâcher le travail de saisie)
    Il fait davantage office de bouton « annuler » dans ces conditions.

  9. Ok les mecs et la ceinture de sécurité dans une voiture sa sert à quelques choses ? :p

    Trève d’ironie ;

    Le bouton reset à sa place dans la « dev ».

    Reset quand vous avez des informations déjà connu, ou la sauvegarde de paramètre. Et oui, car dans la tête de la plupart des gens le formulaire sert seulement à envoyer des informations sur une personne ou prendre contact.

    Ps : une voiture sert à se déplacer rapidement, mais elle à d’autre fonctionnalité.

    Un script avancé utilisant la récupération de donnée d’un formulaire avec des statistiques on – off et des paramètre de configuration aura tendance à avoir le bouton : remettre par défaut comme dans de nombreux logiciel. Vous êtes d’accord Eh bien reset c’est juste le mot anglais et le terme technique.Le faire en html peut-être une solution donc … Dans 80% des formulaires de script-kiddies il est inutile contact et autres. Dans les 20% de développeur repoussant toujours plus loin les limites et la complexité d’un langage alors là, oui le bouton reset est utile.

    LE FAMEUX « ENVOYER » :

    Quand vous validez un formulaire, vous partez de votre base de développeur et non de client. Le client pense envoyer c’est données. Pour lui c’est comme envoyer un e-mail à l’administrateur.

    Voilà, pourquoi les deux termes cités sont dit international ! Mais c’est pas mal vous avez essayé de changer le monde :p !

    Mais il est vrai que quelques fois certains terme tel que répondre, ajouter ou autres sont plus appropriés.

    ( Il vaut mieux réfléchir et le dire que de croire en son savoir car celui-ci est universel mais limité en chacun – Grimoun )

  10. à la limite on peut mettre un bouton reset, mais il faudrait prévoir un message de confirmation écrit en javascript afin d’empêcher d’effacer les données lors d’un clic involontaire

Les commentaires sont fermés.