Bonjour,
Voici une fonction que j'appelle au chargement d'un formulaire :
Elle me permet de modifier le comportement des champs input de type submit (jusque là tout fonctionne).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function fwk_load() { $(function() { /** * Positionne le checked à TRUE pour pouvoir, dans la fonction qui traite le formulaire, ne prendre en compte que ce bouton submit */ $('input').click(function() { if (this.type == 'submit') { alert(this.name+" : "+this.checked) this.checked=true; } }); }); }
Via jquery, je modifie dynamiquement le contenu de ce formulaire et supprime et ajoute certains champs input de type submit et donc, à la fin du rechargement, je relance ma fonction fwk_load pour leur réattribuer ce comportement.
Résultat :
Pour les champs submit nouvellement rechargé : si je clique dessus le message alert s'affiche une seule fois.
Pour les autres, le message d'alert s'affiche deux fois s'il y a eu un rechargement, 3 fois s'il y a eu 2 rechargemments, etc, comme s'il ajoutait une fonction (pourtant déjà existante) à chaque reexécution de la fonction fwk_load.
D'où ma question :
y-a-t-il une moyen de dire :
effectue $('input').click(function() Sans duplication de l'évènement.
(donc en restant générique, donc sans avoir à préciser l'id des nouveaux champ input)
Merci d'avance pour vos réponses.
Partager