Fonctions Javascript s'éxécutent plusieurs fois

Résolu
Bonjour,

j'ai un soucis sur une application de géolocalisation avec maps (intégrée à un projet symfony plus vaste).

Pour faire simple, j'ai une liste de liens.
Au clic sur un lien, j'affiche les détails (dont une carte de géolocalisation) à l'aide d'un appel ajax qui charge un twig.
Sur la carte ainsi chargée, je peux passer en mode édition pour modifier l'adresse etc...

Or, j'ai remarqué qu'au fur et à mesure que je clique sur les liens de la liste, la fonction faisant la géo-localisation est exécutée autant de fois que le nombre de liens sur lesquels j'ai cliqué (un petit alert js).

1er lien cliqué, 1 exécution
2ième lien cliqué, 2 exécutions etc ...

Je ne comprends pas du tout, si quelqu'un pouvait m'aider.
Merci.

3 réponses

  1. Salut,

    On pourrait avoir la fonction qui génére tes liens ?

    Cordialement.
    0
    1. Salut

      Je ne pense pas que sa s'execute plusieurs fois. les executions précédentes restent affichées / actives.
      Donc avec un if en plus supprimer la modif précédente lors du nouveau clic.
      par exemple genre lors du clic tu rajoute une class qui fait le truc puis si lors du clic suivant si la class existe la supprimer et ca ne fait plus le truc sur cet élément .
      0
      1. Merci pour vos réponses.
        En regardant plus près, j'avais une fonction associée à un .click qui était chargée plusieurs fois via ajax. En passant ce listenner à off, le probème est réglé :


        $('.monbouton').off('click');
        $('.monbouton').click(function(){})

        Merci ^^
        0