Riporto una soluzione molto efficace di selezione per la select multipla
codice:
<script language="javascript">
var sel=new Array()
function MemMulti(ss){
	sel.length=0
	for(var i=0;i<ss.options.length;i++)
		if(ss.options[i].selected)
			sel[sel.length]=i	
}
function SelMulti(ss){
	var ultimo='nessuno'
	for(var i=0;i<ss.options.length;i++)
		if(ss.options[i].selected)
			ultimo=i
	for(i=0;i<ss.options.length;i++)
		ss.options[i].selected=false
	for(i=0;i<sel.length;i++)
		ss.options[sel[i]].selected=true
	if(ultimo!='nessuno')
		ss.options[ultimo].selected=!ss.options[ultimo].selected
}
</script>
<form>
<select name="NomeSelect" multiple size="5" onclick="MemMulti(this)" onchange="SelMulti(this)">
	<option value="1">uno</option>
	<option value="2">due</option>
	<option value="3">tre</option>
	<option value="4">quattro</option>
	<option value="5">cinque</option>
	<option value="6">sei</option>
</select>
</form>
Ora... a me va benissimo questa soluzione, solo che se metto 2 select multiple nella pagina, la seconda, al primo click, mi seleziona anche gli elementi selezionati nella prima select...come posso utilizzare lo stesso script per + select multiple indipendenti tra di loro?