Bonjour,

Pour la suppression un par un des éléments passés en groupe, j'ai utilisé un tableau associatif. Tout fonctionne mais j'ai un problème de syntaxe.
Voici un bout de mon code :

ligne 74, error : itemCollection[count] is undefined

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
 
 
function displayItems(idLeftItem,nbItem, array){
		/*
		 * nbItem : size of array
		 * 
		 * Role : browse an array
		 * 
		 */
 
		var table = '<div id="'+idLeftItem+'"><table id="table'+idLeftItem+'">';
		$('#rightList').append(table);
 
 
 
		for(var i=0; i<nbItem; i++){
			$('#table'+idLeftItem).append('<tr id="item'+array[i]['id']+idLeftItem+'"><th id="item'+idLeftItem+'" style="text-align:left; background:#eee; width:80%;">'+array[i]['label']+'</th><th style="width:20%; text-align:right; background:#eee;"><input type="button" value="X" id="del'+array[i]['id']+idLeftItem+'"/></th></tr>');
		}
 
 
		var endTable = '</table></div>';
		$('#rightList').append(endTable);
 
	}	//end_displayItem
 
 
 
function addPackage() {	
 
		//the selected item of leftList
		var $leftItem = $('#leftList option:selected');
 
		//id of the left item
		var idLeftItem = $leftItem.val();
 
		//toString of the object left item
		var textLeftItem = $leftItem.text();
 
 
		//nb d'option selected
		var nbLeftItem = $leftItem.size();
 
 
		//generated code 
		var generateRight_1 = '<div id="'+idLeftItem+'"><table><tr style="text-align:center;"><th colspan="5" style="text-align:left; background:#eee;"><b>'+textLeftItem+'</b></th><th colspan="2" style="text-align:right; background:#eee;"><input type="button" value="X" id="del'+idLeftItem+'"/></th></tr><tr height="10"><td></td></tr><tr><td><b>OS :</b></td><td>Win <input type="checkbox" id="checkWin" checked="checked"/></td><td>Lin <input type="checkbox" id="checkLin"/></td><td>Mac <input type="checkbox" id="checkMac"/></td><td>And <input type="checkbox" id="checkWin"/></td><td>iOS <input type="checkbox" id="checkIOS"/></td></tr><tr height="40"><td></td></tr></table></div>';
 
 
		var count = 0;
 
		var itemCollection = new Array();
		//if leftItem has an id
		if(idLeftItem){
 
			//if size of selected items > 1 
			if(nbLeftItem > 1){
 
				//store each item selected in the collection
				$leftItem.each(function(){					
					var item = { "id" : $(this).val(), "label" : $(this).text() };					
					itemCollection.push(item);
				});
 
 
				displayItems(idLeftItem,nbLeftItem,itemCollection);
 
 
			}//end_if
}
 
 
 
 
		//Remove a right item IN A BLOCK
		$('#del'+itemCollection[count]['id']+idLeftItem).bind("click", function(){
 
			alert("2");
 
			//add to the left list
			var generateLeft_2 = '<option value="'+idLeftItem+'">'+itemCollection[count]+'</option>' ;
 
			$('#leftList').append(generateLeft_2);
 
 
 
			//remove from the right list
			$('tr#'+itemCollection[count]+idLeftItem).remove();
 
 
		});


Merci d'avance.