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 :

Dupliquer une div dans une autre


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut Dupliquer une div dans une autre
    Bonjour

    J'ai une div .date que je voudrais dupliquer dans ma div #dateCalendar quand je clic sue le lien qui à la classe .valid (un gliphicon dans un lien)

    Voici l'HTML et le js.
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <div id="dateCalendar" >
      <div class="date">
        Date : <input type="text" class="mCalendarFR" id="textBox" name="" value="">
        <a class="valid glyph" href=""><span class="glyphicon glyphicon-ok-circle" aria-hidden="true"></span></a>
        <a class="del glyph" href=""><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></span></a>
      </div>
    </div>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $(function(){
      $(".valid").on("click", function(){
        $(".dat").clone().appendTo("#dateCalendar")
      })
    })
    Malgré plusieurs test et mainte recherche, je n'arrive à rien.

    Une petite aide SVP.

    Merci d'avance

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Bonjour,
    $(".dat").clone() ?

  3. #3
    Membre éclairé Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut
    Merci pour ta réponse.

    Excuse moi mais je comprend trop ta réponse 🤔

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Simplement que dans ton code HTML on trouve <div class="date"> !

  5. #5
    Membre éclairé Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut
    Ah oui, le boulet ^^

    Toutefois, sa marche pas pour autant.

    Quand je clique sur le bouton (glyphicon en fait), la div se duplique bien en dessous comme voulu mais disparaît immédiatement.
    J'avais déjà réussi ça sans trouver la solution au problème (d'où mes 50 tests différents).

    Une idée du pourquoi ??

    Même si ces div ne sont pas utilisées dans d'autre js, peut il y avoir des conflits avec d'autres js ??

    Merci d'avance.

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Toutefois, sa marche pas pour autant.
    dans ton code on trouve <a class="valid glyph" href="" ce qui veut dire que ta page est rechargée, il te faut donc inhiber l'action par défaut de la balise <a>, il serait d’ailleurs plus judicieux à mon sens d'utiliser un <button> mais bon !

    Le deuxième point est que la copie ne réagira pas car le clonage ne prend pas les événements en compte, sauf si tu passes en paramètre true.
    Voir : clone().

    Le troisième point est que lors des ajout suivant tu vas dupliquer la première fois une <div> le deuxième fois deux <div> la troisième fois quatre <div> et ainsi de suite. Ce n'est surement pas ce que tu souhaites. Il ne te faut donc faire un clone que de l'élément contenant ta commande d'ajout.
    Voir : closest().

    Au final ton code devrait plus ressembler à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $(".valid").on("click", function(e){
      e.preventDefault();
      $(this).closest(".date").clone(true).appendTo("#dateCalendar");
    })

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

Discussions similaires

  1. Recopier texte taper dans une <div> dans une autre en temps réel
    Par 6nawak dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 31/12/2013, 17h02
  2. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  3. Incorporer une div dans une div
    Par solorac dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 21/07/2008, 14h21
  4. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  5. [MySQL] Insertion d'une image dans une div d'une news
    Par godsilken50 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 05/05/2007, 16h58

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