DÉSACTIVER UN BOUTON SUBMIT APRÈS ENVOI DU FORMULAIRE

Messages postés
356
Date d'inscription
lundi 26 juillet 2004
Statut
Membre
Dernière intervention
26 juin 2012
- - Dernière réponse : patricklane
Messages postés
5
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
31 mai 2008
- 5 févr. 2011 à 12:16
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51431-desactiver-un-bouton-submit-apres-envoi-du-formulaire

patricklane
Messages postés
5
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
31 mai 2008
-
Lorsque j'emploie ce code, le formulaire n'est plus envoyé.
Peut on me dire où est mon erreur ?
Merci d'avance
zen69
Messages postés
584
Date d'inscription
jeudi 28 décembre 2006
Statut
Membre
Dernière intervention
29 avril 2010
1 -
J'ai pas testé du tout... mais ce pourrait-il que ceci règle le probleme de la fonction obsolète...

current_item.addEventListener("click", remListener, false);

function remListener(event) {
callback(event);
this.removeEventListener('click',remListener.caller,false);
}

Deplus je crois que une combinaison des deux solutions proposé est l'idéal, car avec obj.disabled = "true"; le bouton ne "renfonce" plus lors du clique...
:P
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...
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
-
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
-
Un simple onclick="this.disabled='true';" aurait suffi, non ?
zut69
Messages postés
356
Date d'inscription
lundi 26 juillet 2004
Statut
Membre
Dernière intervention
26 juin 2012
1 -
Sympa clair simple et pratique :-)