Ciao enpenzieri,

avevo già fatto una cosa del genere...
devi ordinare in base al valore delle options o al testo?
Ti metto tutti e due i sistemi
codice:
<HTML>
<HEAD>
<script language="javascript">
	function xOption(Text,Value){
		this.text = Text
		this.value = Value
	}
	function ordinaText(cc){
		aa = new Array()
		oo = new Array()
		nOptions = cc.length
		for(i=0;i<nOptions;i++){
			aa[i] = cc[i].text
			oo[i] = new xOption(cc[i].text,cc[i].value)
		}
		for(i=nOptions;i>=0;i--)
			cc[i]=null
		aa.sort()	
		for(i=0;i<nOptions;i++)
			for(j=0;j<nOptions;j++)
				if(aa[i]==oo[j].text)
					cc[i]= new Option(oo[j].text,oo[j].value)
	}
	
	function ordinaValue(cc){
		aa = new Array()
		oo = new Array()
		nOptions = cc.length
		for(i=0;i<nOptions;i++){
			aa[i] = cc[i].value
			oo[i] = new xOption(cc[i].text,cc[i].value)
		}
		for(i=nOptions;i>=0;i--)
			cc[i]=null
		aa.sort()	
		for(i=0;i<nOptions;i++)
			for(j=0;j<nOptions;j++)
				if(aa[i]==oo[j].value)
					cc[i]= new Option(oo[j].text,oo[j].value)
	}
	
	
</script>
</HEAD>
<BODY>
<form name="NomeForm">
<select name="NomeCombo" onchange="alert(this.options[this.selectedIndex].value)">
	<option value="1">D</option>
	<option value="2">C</option>
	<option value="3">B</option>
	<option value="4">A</option>
</select>
<input type="button" value="ordina per text" onclick="ordinaText(document.NomeForm.NomeCombo.options)">
<input type="button" value="ordina per value" onclick="ordinaValue(document.NomeForm.NomeCombo.options)">
</form>
</BODY>
</HTML>