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 :

OptionGroup


Sujet :

JavaScript

  1. #1
    Membre averti
    Homme Profil pro
    Coordinateur développement web
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Coordinateur développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 412
    Points
    412
    Par défaut OptionGroup
    Bonjour,

    Je dispose d'une liste déroulante dans laquelle se trouve 3 optionGroup.
    Je dispose également d'une autre liste déroulante ou sont stockées des années. lors du changement d'années, il faut que je refraichissent la liste déroulante ou se trouve les optionsgroup. J'ai trouver comment écrire dans la liste mais je ne vois pas comment lui dire d'écrire dans tel ou tel optiongroup.

    Si vous quelqu'un pouvez me donner un coup de main

    voici mon code qui me sert à écrire dans la liste
    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 majVersion(list){
    		lst=document.getElementById('changeversion');
    		lst.length=0;
    		if(year[list.value].version.length > 0){
    			for(y in year[list.value].version){
    				var o=new Option(year[list.value].version[y].name,year[list.value].version[y].id);
    				if(year[list.value].version[y].active){
    					o.style.color='red';
    				}else{
    					if(year[list.value].version[y].simul){
    						o.style.color='blue';
    					}
    					else
    						o.style.color='black';
    				}
    				lst.options[lst.options.length]=o;
    			}
    		}
    	}
    Par avance merci

    Mic
    Toutes mes références en ligne : http://www.developpeur-web-php.fr

  2. #2
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    essayes de mettre un id a ton optgroup, tu le recupère avec un getElementById et ensuite un appendChild de ton option.
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  3. #3
    Membre averti
    Homme Profil pro
    Coordinateur développement web
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Coordinateur développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 412
    Points
    412
    Par défaut
    voila se que je réalise mais lst.length ou lst.options.length affiche undefined

    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
     
    <select id="toto" name="toto">
    <optgroup label="test1" id="budget">
    	<option value="1">Tets 1</option>
    </optgroup>
    <optgroup label="test2">
    	<option value="2">Tets 2</option>
    </optgroup>
    </select>
    <script type="text/javascript">
     
    		lst=document.getElementById('budget');
    		lst.length=0;
     
    </script>
    Toutes mes références en ligne : http://www.developpeur-web-php.fr

  4. #4
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    lst=document.getElementById('budget'); 
    	op = document.createElement("option");
    	op.text = 'toto';
    	op.value = '1';
    	lst.appendChild(op);
    EDIT

    remplaces par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    op.appendChild(document.createTextNode('toto'));
    car dans ie je viens de voir que ca marche pas tres bien sinon
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  5. #5
    Membre averti
    Homme Profil pro
    Coordinateur développement web
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Coordinateur développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 412
    Points
    412
    Par défaut
    Ok merci ça marche.

    Par contre je fais comment pour les supprimer après ? car dans mon cas en 2005 j'ai des eléments qu'il ne seront pas en 2006 par exemple
    Toutes mes références en ligne : http://www.developpeur-web-php.fr

  6. #6
    Membre averti
    Homme Profil pro
    Coordinateur développement web
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Coordinateur développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 412
    Points
    412
    Par défaut
    j'ai essayer ça mais ça na pas l'air de fonctionner

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
       for(var i=0;i<lst.childNodes.length;i++)
       		lst.removeChild(i);
    Toutes mes références en ligne : http://www.developpeur-web-php.fr

  7. #7
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lst.removeChild(lst.childNodes[i]);
    mais fais gaffe car en enlevant les elements, le length sera réactualisé.

    Fais plutot un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    while(lst.childNodes.length > 0)
    lst.removeChild(lst.firstChild());
    ca te la videra
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  8. #8
    Membre averti
    Homme Profil pro
    Coordinateur développement web
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Coordinateur développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 412
    Points
    412
    Par défaut
    ok merci,

    je suis arrivé a supprimé en passant par la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
       for(var i=0;i<lst.childNodes.length;i++){
    		var noeud=lst.firstChild;
    		lst.removeChild(noeud);
    	}
    je vais prendre le tiens, il me semble beaucoup mieux

    Encore merci pour ton aide

    Mic
    Toutes mes références en ligne : http://www.developpeur-web-php.fr

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

Discussions similaires

  1. [AC-2010] une action commune dépendant du choix sur plusieurs optiongroup
    Par david89 dans le forum VBA Access
    Réponses: 6
    Dernier message: 01/09/2011, 04h35
  2. [AC-2003] ajouter un choix dans un OptionGroup
    Par antoinev2 dans le forum IHM
    Réponses: 2
    Dernier message: 28/05/2009, 16h02
  3. Réponses: 1
    Dernier message: 01/05/2007, 21h02
  4. Réponses: 8
    Dernier message: 29/07/2006, 22h31
  5. [Form] OptionGroup et checkBox
    Par ip203 dans le forum IHM
    Réponses: 3
    Dernier message: 21/06/2006, 13h30

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