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 partiellement le contenu de <li> et rajouter une balise


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2002
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 55
    Par défaut Dupliquer partiellement le contenu de <li> et rajouter une balise
    Bonjour,

    Je débute en JQuery et je me retrouve bloqué sur un bout de code.
    J'aimerai dupliquer le contenu d'une liste <ul> dans une autre <ul>
    mais sans reprendre tout le contenu et en rajoutant une balise.

    Un pti bout de code sera plus parlant

    Je voudrai dupliquer tous les "li" de la liste "id1" :
    la liste "id1" ne doit pas être modifée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <ul id="id1">
    <li><span class="span1">Ligne 1</span><span class="span2">Ligne 1 Span 2</span><span class="span3">Ligne 1 Span 3</span></li>
    <li><span class="span1">Ligne 2</span><span class=".span2">Ligne 2 Span 2</span><span class="span3">Ligne 2 Span 3</span></li>
    <li><span class="span1">Ligne 3</span><span class="span2">Ligne 3 Span 2</span><span class="span3">Ligne 3 Span 3</span></li>
    </ul>
    dans cette liste "id2" avec quelques modif :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <ul id="id2">
    <li><a href="#">test</a><span class="span2">Ligne 1 Span 2</span></li>
    <li><a href="#">test</a><span class="span2">Ligne 2 Span 2</span></li>
    <li><a href="#">test</a><span class="span2">Ligne 3 Span 2</span></li>
    </ul>
    J'ai écrit un début de code, il me faut maintenant dupliquer la balise .span2
    avec clone je suppose ? mais je n'y arrive pas. Ca me retourne toujours un "Objet" et non pas le contenu. Il doit y avoir un moyen simple mais je ne vois pas lequel.
    De plus j'utilise cette méthode de tableau pour faire le append et je me demande s'il n'y a pas plus simpe ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $("#id1 li").each(function()
    {
    var balises = [ '<li><a href="#">test</a>\n', 'SPAN2 A DUPLIQUER ICI\n', '</li>' ]; 
    $('#id2').append(balises.join('')); 
    });
    D'avance merci de votre aide.

  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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    Attention !!!
    une classe ne commence pas par un point !!!


    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
    <script type='text/javascript'>
     $(function(){
    $('#id1 li .span1, #id1 li .span3').remove()
    $('#id1 .span2').before('<a href="#">test</a>')
     
    })
     </script>
    </head>
    <body>
    <ul id="id1">
    <li><span class="span1">Ligne 1</span><span class="span2">Ligne 1 Span 2</span><span class="span3">Ligne 1 Span 3</span></li>
    <li><span class="span1">Ligne 2</span><span class="span2">Ligne 2 Span 2</span><span class="span3">Ligne 2 Span 3</span></li>
    <li><span class="span1">Ligne 3</span><span class="span2">Ligne 3 Span 2</span><span class="span3">Ligne 3 Span 3</span></li>
    </ul>
    </body>
    </html>
    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 averti
    Inscrit en
    Mai 2002
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 55
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Attention !!!
    une classe ne commence pas par un point !!!
    Ouulaaa !! oui, j'ai fais du copier/coller un peu trop rapide. J'ai édité mon 1ier post.

    Merci pour ta réponse, mais ce n'est pas tout à fait ce que je voulais faire.

    J'aimerai que la list "id1" ne soit pas modifié, il faut que le contenu de la list "id1"
    soit dupliqué dans la liste "id2" avec les modifications indiquées.

  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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    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
    <script type='text/javascript'>
     $(function(){
    var newUl=$('#id1').clone().attr('id','id2')
    newUl.find('li .span1, li .span3').remove()
    newUl.find('.span2').before('<a href="#">test</a>')
    $('#id1').after(newUl)
    })
     </script>
    </head>
    <body>
    <ul id="id1">
    <li><span class="span1">Ligne 1</span><span class="span2">Ligne 1 Span 2</span><span class="span3">Ligne 1 Span 3</span></li>
    <li><span class="span1">Ligne 2</span><span class="span2">Ligne 2 Span 2</span><span class="span3">Ligne 2 Span 3</span></li>
    <li><span class="span1">Ligne 3</span><span class="span2">Ligne 3 Span 2</span><span class="span3">Ligne 3 Span 3</span></li>
    </ul>
    </body>
    </html>
    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 averti
    Inscrit en
    Mai 2002
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 55
    Par défaut
    il me semblait bien que c'était tout bete ^^ , je m'obstinais dans la mauvaise
    direction !

    merci pour ta réponse

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

Discussions similaires

  1. [AC-2000] Affichage partiel du contenu d'un champ
    Par etoileetoile dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 23/10/2009, 11h20
  2. Réponses: 2
    Dernier message: 09/06/2007, 22h09
  3. PB récupérez le contenu d'une variable dans une balise titr
    Par crevettepourrie dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/01/2006, 17h41
  4. Perte partielle du contenu d'un TImage
    Par Gaadek dans le forum Composants VCL
    Réponses: 7
    Dernier message: 24/10/2005, 19h08
  5. Effacer le contenu d'un fichier a partir d'une ligne
    Par localhost dans le forum Linux
    Réponses: 3
    Dernier message: 04/04/2004, 04h47

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