IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Ajouter un listener sur des champs ajoutés dynamiquement [AJAX]


Sujet :

jQuery

  1. #1
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 141
    Points : 157
    Points
    157
    Par défaut Ajouter un listener sur des champs ajoutés dynamiquement
    Voilà, je travaille sur des formulaires assez complexes où des blocs d'éléments peuvent-être ajoutés via du javascript. Ces éléments interagissent entre eux via du javascript.

    Il s'agit en fait de listes déroulantes liées. avec donc par exemple :

    Bloc1
    -------------
    Champs1-1
    Champs1-2
    Champs1-3

    Bloc2
    -------------
    Champs2-1
    Champs2-2
    Champs3-3

    etc.

    Comment faire pour qu'indépendamment le premier champs de chaque bloc agisse toujours sur le second (champs du bloc en question).

    Est-il possible d'inscrire le javascript sur chaque élément qui sera ajouté ou d’écouter chaque variable dont le nom se distingue en peu de chose d'une autre?

    Bref, je ne suis pas un expert en javascript (c'est bien dommage) et c'est pourquoi je viens à la recherche d'une aide. J'utilise jQuery la plupart du temps.

    Je vous remercie d'avance pour vos éclaircissements où pour tout lien vers une doc qui pourrait m'être utile, en espèrant que mon souci soit suffisamment bien expliqué.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    pour ce qui est de l'héritage d'évenements sur des objet crées dynamiquement, une petite recherche sur le forum t'aurait condiut vers on() ou delegate()...

    ensuite il va falloir que tu approfondisse le principe des selecteurs avec par exemple :first ou :eq(index) en encore :gt :lt etc ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 141
    Points : 157
    Points
    157
    Par défaut
    Je te remercie de ta réponse.
    J'ai effectivement effectué des recherches avant de décider de poster mon problème ici mais n'ayant pas une connaissance suffisante en Javascript/jQuery, celui-ci est déjà complexe à expliquer pour moi.

    delegate() me semble effectivement répondre à ma demande.J'imagine qu'il faudrait que je l'applique à tous mes premiers éléments de chaque bloc sur une classe "elementlvl1" par exemple, pour qu'il agissent sur l'élément de classe "elementlvl2" se trouvant juste après. Est-ce que c'est une approche correcte?

    Si tu as des exemples un peu plus complexes que ceux présents sur la page de doc jQuery, je suis preneur.

    Merci

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    delegate ou on ...

    pour le premeir element le selecteur :first ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre habitué
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 141
    Points : 157
    Points
    157
    Par défaut
    Il s'agissait bien de on. Il fallait juste le placer sur un élément en tout temps présent dans le DOM dès le chargement de la page (le $('body') suffit dans mon cas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Ajouter un interval de temps basé sur des champs
    Par Redgard dans le forum Access
    Réponses: 3
    Dernier message: 01/01/2015, 11h02
  2. itérér des champs ajoutés dynamiquement
    Par pablogodoy dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 29/01/2012, 11h37
  3. Ajouter des Listener sur des objets créés dynamiquement
    Par floctc dans le forum Composants
    Réponses: 10
    Dernier message: 23/04/2010, 16h35
  4. [JDateChooser] ajout d'un listener sur le champs text
    Par Micke7 dans le forum Composants
    Réponses: 0
    Dernier message: 06/02/2009, 15h00
  5. Ajouter un listener sur une variable
    Par serwol dans le forum Général Java
    Réponses: 4
    Dernier message: 14/10/2005, 15h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo