Désactiver un bouton submit après envoi du formulaire

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 965 fois - Téléchargée 17 fois

Contenu du snippet

Ce code vous permet d'éviter de cliquer plus d'une fois sur un bouton submit, cela permet d'éviter les lignes de plus dans la base de donnée.

Source / Exemple :


function valider(){
	
	var elt = document.getElementById("valider");
	
	elt.value = "veuillez patienter...";
	elt.style.border = "1px solid white";
	elt.style.backgroundColor = "#CCCCCC";
	elt.disabled = "true";
}

<input type="submit" value="Valider" name="valider" id="valider" onclick="javascript:valider()"/>

A voir également

Ajouter un commentaire

Commentaires

zut69
Messages postés
356
Date d'inscription
lundi 26 juillet 2004
Statut
Membre
Dernière intervention
26 juin 2012
-
Sympa clair simple et pratique :-)
lddsoft
Messages postés
19
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
16 mai 2011
-
Un simple onclick="this.disabled='true';" aurait suffi, non ?
cs_hornetbzz
Messages postés
60
Date d'inscription
lundi 1 décembre 2008
Statut
Membre
Dernière intervention
3 janvier 2011
-
C'est très bien pour les débutants dans le sens où le code est simple et illustratif.

Ceci dit, +1 sur le commentaire de LDDSoft et j'ajouterai qu'il serait bien d'aller plus loin en désactivant un bouton "tout court" par le DOM, pas seulement le submit d'un formulaire.

Il y a un très bon tuto ici (http://www.howtocreate.co.uk/tutorials/javascript/domevents) , illustrant ceci par exemple (cas de NS) :

current_item.addEventListener("click", function (event) {
callback(event);
this.removeEventListener('click',arguments.callee,false);
}
, false);
lddsoft
Messages postés
19
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
16 mai 2011
-
@HORNETBZZ

OK, mais il me semble avoir lu quelque part que "arguments.callee" était devenu obsolète depuis JavaScript 1.4 ...
cs_hornetbzz
Messages postés
60
Date d'inscription
lundi 1 décembre 2008
Statut
Membre
Dernière intervention
3 janvier 2011
-
@LDD: merci beaucoup pour l'info même si... damned, j'étais tout content de cette fonction, ça m'arrange pas cette histoire ;-) Mais a priori en première lecture, cela dépend de l'usage de cet argument. Affaire à suivre...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.