questo script potrebbe tornare utile a qualcuno...
sposta voci da una select all'altra e li ordina alfabelicamente...
Codice PHP:
<script>
// Due argomenti, sono due frecce, o --> o <--
function sposta(direzione){
j=0;
form=document.form1
if(direzione=='-->'){
partenza=form.prima
arrivo=form.seconda
}
else{
partenza=form.seconda
arrivo=form.prima
}
non_sel=new Array()
sel=new Array()
//per ogni opzione di partenza controlla:
for(i=0;i<partenza.options.length;i++){
//se è selezionata, mettila nell'array sel
if(partenza.options[i].selected){
partenza.options[i].selected=false
sel.push(partenza.options[i])
}
//altrimenti non è selezionata, quindi mettila nell'array non_sel
else{
non_sel.push(partenza.options[i])
}
}
//per ogni opzione di arrivo
for(i=0;i<arrivo.options.length;i++){
//aggiungi all'array sel tutti i valori di arrivo
sel.push(arrivo.options[i])
}
function sorting(a,b){
if(a.text<b.text)return -1
if(a.text>b.text)return 1
else return 0
}
sel.sort(sorting)
non_sel.sort(sorting)
//azzera le due select
partenza.options.length=0;
arrivo.options.length=0;
//Per ogni valore in non_sel
for(i=0;i<non_sel.length;i++){
//scrivilo in partenza
partenza.options[i]=non_sel[i]
}
//Per ogni valore in sel
for(i=0;i<sel.length;i++){
//scrivilo in arrivo
arrivo.options[i]=sel[i]
}
}
</script>
<form name="form1">
<select name="prima" multiple size=7>
<option name="a">a</option>
<option name="c">c</option>
<option name="b">b</option>
</select>
<input type="button" value=">>" onClick="sposta('-->')" ><input type="button" value="<<" onClick="sposta('<--')" >
<select name="seconda" multiple size=7>
<option name="d">d</option>
<option name="e">e</option>
</select>