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 :

copie de select avec cloneNode


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Par défaut copie de select avec cloneNode
    Bonjour en plus d'être un débutant c'est la première fois que je poste dans un forum:
    voici mon problème: je voudrais, en cliquant sur un bouton, copier une liste déroulante située avant ce bouton.

    voici mon code dans le <body>:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
       <body>
    			<select id="liste_service" name='te0'>
    			<option value='faux'>---choisissez---</option>
    			<?php // création de la liste à partir d'une bd mySQL
    			while ($row=mysql_fetch_array($resultat,MYSQL_NUM))
    			{
    			echo '<option value="'.$row[1].'">'.$row[0].' ('.$row[2].') </option>';
    			}
    			?>
    			</select></br></br>
    			<input type='button' value='une autre liste' id='sup' onClick='creer_liste()'>
    			<div id="div" style="display:none;"></div>
    			</body>

    et voici dans le <head>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <head>
    			<title>test</title>
     
    			<script type="text/javascript">
    				function creer_liste()
    				{
    				var selectexistant = document.getElementById('liste_service');
    				var div_place = document.getElementById('div');
    				var newselect = selectexistant.cloneNode(true);
    				div_place.appendchild(newselect);
    				}
     
    			</script>
    			</head>

    resultat: lorsque je lis le code à partir de IE, la liste s'affiche bien mais lorsque je clique sur le bouton 'une autre liste' ça ne fait rien
    Pouvez-vous maidez svp?

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut Bienvenue !
    Bonjour à vous,

    Une toute petite remarque pour commencer mais rien de grave. Nous sommes sur le forum Javascript donc nous préférons voir le code Javascript et le HTML généré. Le code PhP ne nous aide pas, en fait, il nous trompe souvent.

    Ceci étant dit, je constate deux choses sur la même <div> :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="div" style="display:none;"></div>
    Donner "div" comme id est audacieux. Ce terme étant le nom d'un tag html, il est déconseillé de l'utiliser comme id, nom de variable, etc.
    Ensuite, la <div> est cachée. Peut-être que votre seconde liste se crée bien mais si vous n'affichez pas la <div>, vous ne risquez pas de voir le résultat.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    div_place.style.display="";
    div_place.appendchild(newselect);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Par défaut merci
    déja escuse-moi pour le retard de ma réponse (période de cyclone sur le territoire)
    merci pour ta reponse j'ai trouvé l'erreur.

    dans le body
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <body>
    			<select id="liste_service" name='te0'>
    			<option value='faux'>---choisissez---</option>
                                       //liste de tous les services
    			</select></br></br>
    			<input type='button' value='une autre liste' id='sup' onClick='creer_liste()'>
    			<div id="div" style="display:none;"></div>
           </body>
    dans le head:
    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
     
    <head>
    			<title>test</title>
     
    			<script type="text/javascript">
    				function creer_liste()
    				{
    				var selectexistant = document.getElementById('liste_service');
    				var div_place = document.getElementById('div');
    				var newselect = selectexistant.cloneNode(true);
     
    div_place.style.display="";
    div_place.appendchild(newselect);
     
    				}
     
    			</script>
    			</head>
    Et ça marche merci bcp!!

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

Discussions similaires

  1. [XL-2010] selection et copie d'onglet avec variable
    Par The Saint dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/01/2012, 16h51
  2. [XSL] copy-of select avec un "|" possible?
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 23/11/2005, 09h51
  3. pb de select avec size avec choix multiple
    Par La_picolle dans le forum ASP
    Réponses: 10
    Dernier message: 28/08/2003, 15h21
  4. Copie de CD avec k3b
    Par -PiKo- dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 08/08/2003, 13h58
  5. requete SELECT avec un nombre constant
    Par gurumeditation dans le forum Requêtes
    Réponses: 3
    Dernier message: 04/07/2003, 20h04

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