Comment modifier les options d'un champ select ?
http://javascript.developpez.com/faq...elect.modifier

  • Aération du code et regroupement des déclarations de variables.
  • Indentation du code
  • Correction d'une faute de frappe (espace manquant avant les ":") et d'orthographe ("s" à champ)
  • Dans la liste, après le code, remplacement du mot value par son équivalent français : valeur


Comment modifier les options d'un champ select ?

La méthode suivante permet de mettre à jour un select désigné par son idSelect:
Code javascript : 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
21
22
23
24
25
26
27
28
29
 
/**
* Remplace le contenu du select désigné par la liste présente dans data.
* @param idSelect identifiant du select à modifier
* @param data liste associative (clé/valeur) des values et textes des options à créer
* @param selectedKey la clé sélectionnée
*/
function updateComboBox(idSelect, data, selectedKey) 
{
	var monSelect = document.getElementById(idSelect);
	var selected;
	var i=0;
	monSelect.options.length = 0;
 
	for (var key in data) 
	{
		// permet de choisir le champ à définir par défaut
		if (selectedKey == key) 
		{
			selected = i;
		}
 
		monSelect.options[monSelect.length] = new Option(data[key],key);
		i++;
	}
	//permet de positionner la combo sur le bon champ
	monSelect.selectedIndex = selected;
 
}

  • idSelect est l'identifiant unique du select à mettre à jour
  • data est une liste associative des valeurs / textes des options à ajouter
  • selectedKey est la valeur de l'option actuellement sélectionnée
Il y a un lien vers un exemple de code. Il fonctionne sous Firefox 20.0.1 et IE9 pour Vista.

Il est précisé que ce code ne fonctionne pas sous Opera 9.0. Pourriez-vous vérifier si ce code fonctionne avec la dernière version d'Opera ?