Bonjour,

J'ai une page HTML avec un select multiple et une case à cocher.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<select name="listOfDnCodes" multiple="multiple" size="5" onchange="manageDnTypeChange()" id="dnType">
  <option value="2">Aluminium / 36</option>
  <option value="4">Copper / 76</option>
  <option value="6">Gold / 136</option>
  <option value="3">Iron / 56</option>
  <option value="1">Normal / 24</option>
  <option value="7">Platinum / 156</option>
  <option value="5">Silver / 96</option>
</select>
 
<input type="checkbox" id="dnTypeCheckBox" onchange="manageDnTypeCheckBoxChange()"/>
Le but est simple : quand je coche la case, je veux qu'automatiquement toutes les options du select soient sélectionnées. C'est ce qu'est censé faire le code javascript suivant :

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
21
function manageDnTypeCheckBoxChange()
{
	if (document.getElementById("dnTypeCheckBox").checked == true)
	{
		selectAllDnTypes(true);
	}
	else
	{
		selectAllDnTypes(false);
	}
}
 
function selectAllDnTypes(value)
{
	var options = document.getElementById("dnType").options;
 
	for(i = 0; i < options.length; i++)
	{
		options[i].selected = value;
	}
}
Ce code fonctionne parfaitement bien sous Firefox, par contre sous IE 6.0 je suis obligé de faire un clic droit sur ma liste (après avoir cocher la case) pour que l'affichage soit rafraichi et que toutes les options apparaissent sélectionnées.

Est-ce que quelqu'un aurait une brillante idée, un contournement, une astuce, enfin une solution quoi !!!
Par avance merci.

jeanbabi