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

JavaScript Discussion :

Récupérer l'id de la dernière div d'un div


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Juin 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2015
    Messages : 15
    Points : 6
    Points
    6
    Par défaut Récupérer l'id de la dernière div d'un div
    Bonjour à tous,

    Je suis débutante et en train de concevoir un formulaire html à base d'input text.

    J'ai créée un code javascript qui permet d'ajouter/supprimer un div d'une div, d'attribuer l'id du div créé, etc...

    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
    18
    19
    20
     
    <script type="text/javascript">
    			function addInput(divName){
     
    				var nbr_div = divName.getElementsByTagName("div").length
    				var newdiv = document.createElement('div');
    				newdiv.setAttribute("id", "playlist" + nbr_div);
     
    				newdiv.innerHTML = "Playlist " + (nbr_div) + " - " + 
    								   "<a onclick=delInput(\"playlist"+ (nbr_div) + "\")> Supprimer cette playlist</a>" + 
    								   "<input type='text' size='80' name='playlist" + (nbr_div) + "'>&nbsp;";
     
    				document.getElementById(divName).appendChild(newdiv);
    			}
     
    			function delInput(divName) {
    				var deldiv= document.getElementById(divName);
    				deldiv.remove(element);
    			}
    			</script>
    Ca fonctionne très bien, ma question est : comment récupérer la valeur ID du dernier div de ma div ?

    Simplement parce que, j'ai playlist 0, playlist 1, playlist 2, si je supprime playlist 0, et que je rajoute une playlist, elle s’appellera donc playlist 2 au lieu de playlist 3, hors elle existe déjà.

    La seule solution qui me vient en tête et donc de récupérer l'attribut ID du dernier DIV, je trouve rien du tout sur google...

    Merci pour vos lumières.

  2. #2
    Futur Membre du Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Juin 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2015
    Messages : 15
    Points : 6
    Points
    6
    Par défaut
    Ok je dois utiliser la propriété lastchild et surement getattribute ce qui me permettra d'obtenir ce que je veux, lorsque ce sera OK, je partagerais cela sur ce thread pour les plus curieux, les conseils, les opti, ...

    ;-) biz

  3. #3
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    la question que tu devrais te poser est : "Ai je besoin des ID pour repérer mes éléments ?"

    La réponse dans ce cas est NON, tu dispose de la référence à l'élément lorsque tu ajoutes/construis ton DOM.

    En partant du code HTML suivant
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <button onclick="addPlayList()">Ajouter</button>
    <div id="div_play_liste"></div>
    tu peux ajouter/supprimer autant de DIV que tu le souhaites avec le code ci dessous et sans faire appel aux ID
    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
    18
    19
    20
    function addPlayList(){
      var oDest, oDiv, oBtn, oInput;
      // récup DIV parent
      oDest = document.getElementById( 'div_play_liste')
      // création des éléments
      oDiv = document.createElement('DIV');
      // création d'un bouton destroy
      oBtn = document.createElement('BUTTON');
      oBtn.appendChild( document.createTextNode('Supprimer'));
      oBtn.onclick = function(){
          oDest.removeChild( this.parentNode);
        };
      // création d'un input saisie
      oInput = document.createElement('INPUT');
      // ajout des éléments à la DIV
    	oDiv.appendChild( oBtn);
      oDiv.appendChild( oInput);
      // ajout des éléments à la DIV parent
      oDest.appendChild( oDiv);
    }

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Juin 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juin 2015
    Messages : 15
    Points : 6
    Points
    6
    Par défaut
    Merci ! je n'ai pas pensé du tout à ce raisonnement là ! :-)

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/08/2009, 15h43
  2. [IE7] Récupérer l'id de la dernière div
    Par d-Rek dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/10/2007, 16h07
  3. [DOM] Comment récupérer la valeur d'une ligne cliquée dans un <DIV>?
    Par insane_80 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/07/2007, 16h11
  4. Réponses: 5
    Dernier message: 29/05/2007, 17h56
  5. Récupérer comme date l'année dernière
    Par celiaaa dans le forum Access
    Réponses: 2
    Dernier message: 04/01/2007, 14h47

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