Partage
  • Partager sur Facebook
  • Partager sur Twitter

Changer les options d'un <select>

Par le focus d'un autre <select>

    20 octobre 2008 à 17:01:08

    Bonjour à tous. Voici ce que je voudrais réalisé.

    Admettons deux <select>, ainsi,

    <select name="select1">
            <option value="valeur0" > option 0 </option>
    	<option value="valeur1" > option 1 </option>
    	<option value="valeur2" > option 2 </option>
    </select>
    



    <select name="select2">
            <option value="valeur0" > option 0 </option>
    	<option value="valeur1" > option 1 </option>
    	<option value="valeur2" > option 2 </option>
    </select>
    



    Je voudrais que lorsque le lorsque le focus du select1 change, cela change toutes les options du select2 à la manière très très schématique de

    IF FOCUS valeur1 de select1
    {
    // les options du select2 sont cela
    }

    IF FOCUS valeur2 de select1
    {
    // les options du select2 sont ceci
    }

    Comment procéder ? Merci, si je n'ai pas été assez clair, posez les questions nécessaires.
    • Partager sur Facebook
    • Partager sur Twitter
      21 octobre 2008 à 10:04:36

      Salut,

      si j'ai bien compris ce que tu demandes, ce code doit te satisfaire :)


      <html>
      <head>
      <script>
      function alimente()
      {
      if (document.getElementById('select1').value == "0")
      {
      	document.getElementById('select2').style.display = "none";
      }
      	if (document.getElementById('select1').value == "valeur0")
      	{
      	    document.getElementById('select2').style.display = "inline";
      		document.getElementById('select2').options.length = 0;
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 0 : Valeur0','0');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 0 : Valeur1','1');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 0 : Valeur2','2');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 0 : Valeur3','3');
      	}
      	else if (document.getElementById('select1').value == "valeur1")
      	{
      	    document.getElementById('select2').style.display = "inline";
      		document.getElementById('select2').options.length = 0;
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 1 : Valeur0','0');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 1 : Valeur1','1');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 1 : Valeur2','2');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 1 : Valeur3','3');
      	}
      	else if (document.getElementById('select1').value == "valeur2")
      	{
      	    document.getElementById('select2').style.display = "inline";
      		document.getElementById('select2').options.length = 0;
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 2 : Valeur0','0');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 2 : Valeur1','1');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 2 : Valeur2','2');
      		document.getElementById('select2').options[document.getElementById('select2').options.length]=new Option('Option 2 : Valeur3','3');
      	}
      	
      	
      }
      
              
      </script>
      </head>
      <body>
      <table>
      <tr>
      <td>
      	<select id="select1" onchange="alimente();">
      	    <option value="0" > Vore choix </option>
      		<option value="valeur0" > option 0 </option>
      		<option value="valeur1" > option 1 </option>
      		<option value="valeur2" > option 2 </option>
      	</select>
      </td>
      </tr>
      <tr>
      <td>
      
      <select id="select2" style="display:none">
          
      </select>
      </td>
      </tr>
      </table>
      </body>
      </html>
      
      • Partager sur Facebook
      • Partager sur Twitter
        21 octobre 2008 à 13:58:30

        Très bien j'essayerais, merci beaucoup :)
        • Partager sur Facebook
        • Partager sur Twitter

        Changer les options d'un <select>

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown