Bonjour � vous,

J'ai recherch� ici sur le FORUM mais je n'ai pas trouv�.
Le SUJET dit tout. Ce que j'ai trouv� sur le WEB fonctionne bien quand on part de rien dans la liste.
Quand je reviens pour modifier, ce que j'avais enregistr� est s�lectionner dans la liste, mais lorsque je clique sur un autre pour un ajout ce qui �taient s�lectionn�s disparait et je dois tout recommencer � z�ro.

Le dernier script que j'ai est le 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
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
90
91
92
93
94
95
96
97
98
99
// Variables we need
var previous	= new Array();
var lastClicked = '';
 
// We are going to attach event listeners, no code at the bottom or anything hard coded...
function addEvent(obj, evType, fn)
{ 
	if(obj.addEventListener)
	{
		obj.addEventListener(evType, fn, false);
		return true;
	}
	else if(obj.attachEvent)
	{
		var r = obj.attachEvent('on' + evType, fn);
		return r;
	}
	else
	{
		return false; 
	} 
}
 
// Let's begin when the DOM is ready
addEvent(window, 'load', begin);
 
// Attach the handlers to our selects
// Attach the handlers to our selects
function begin()
{
	var selects = document.getElementsByTagName('select');
 
	for(var i = 0; i < selects.length; i++)
	{
		if(selects[i].multiple == true)
		{
			addEvent(selects[i], 'click', whichElement);
			addEvent(selects[i], 'click', addRemoveClicked);
		}
	}
}
// We add a couple of handlers to each
function addSelect(id)
{
	var sel = document.getElementById(id);
	addEvent(sel, 'click', whichElement);
	addEvent(sel, 'click', addRemoveClicked);
}
 
// Find which element we are looking at on this click
function whichElement(e)
{
	if(!e)
	{
		var e = window.event;
	}
	if(e.target)
	{
		lastClicked = e.target;
	}
	else if(e.srcElement)
	{
		lastClicked = e.srcElement;
	}
	if(lastClicked.nodeType == 3) // Safari bug
	{
		lastClicked = lastClicked.parentNode;
	}
}
 
// Make sure we are displaying the correct items
function addRemoveClicked(e)
{
	if(!previous[this.id])
	{
		previous[this.id] = new Array();
	}
	// Remember what has been used
	if(previous[this.id][lastClicked.value] == 1)
	{
		previous[this.id][lastClicked.value] = 0;
	}
	else
	{
		previous[this.id][lastClicked.value] = 1;
	}
	var selectBox = document.getElementById(this.id);
 
	// Add correct highlighting
	for(var i = 0; i < selectBox.options.length; i++)
	{
		selectBox.options[i].selected = '';
 
		if(previous[this.id][selectBox.options[i].value] == 1)
		{
			selectBox.options[i].selected = 'selected';
		}
	}
}
Mon Select Multiple est le suivant :

Code php : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
select name="invites[]" size="25" multiple="MULTIPLE" id="invites" style="width:250px;">
<?php 
do {
?>
        <option value="<?= $row_membre['no_membre']; ?>"<?php if (in_array($row_membre['no_membre'], $_SESSION['invites'])) echo "selected='selected'"; ?>><?= stripslashes($row_membre['prenom']) . ' ' . stripslashes($row_membre['nom']); ?></option>
<?php 	
} while ($row_membre = mysql_fetch_assoc($dem_membre)); 
?>
</select>

Ce petit bout de code me permet d'avoir en selection ce qui est enregistr�.

Ceux et celles qui utiliseront cet interface ne sont pas des habitu�s, donc ca doit �tre le plus simple possible.

Merci
Sylvain