allora questa è la funzione (asp) attraverso la quale genero le combo:

function creaCombo(nome_tabella, nome, valore, nome_campo, valWhere, valID, idReg)
Dim Cn, adoRs, i, str

Set Cn = Server.CreateObject("ADODB.Connection")
Cn.Provider = "sqloledb"
cn.Properties("Data Source").Value = "sql"
cn.Properties("Initial Catalog").Value = "nomeDB"
cn.Properties("User ID").Value = "miaUser"
cn.Properties("Password").Value = "miaPwd"
cn.open


Dim strSel

set adoRs=Cn.Execute("select * from "&nome_tabella&" "&valWhere&" order by substring("&nome_campo&", 1, 100)" )


str=str&"<select name="""&nome&""" onChange=""inviaForm('"&valID&"', '"&idReg&"');""><option value=""0"">--Scegli--</option>"
Do while not adoRs.eof

if valore = adoRs("id") then
strSel = "selected"
else
strSel = ""
end if


str=str&"<option value="""&adoRs("id")&""" "&strSel&">"&adoRs.Fields(1).Value&"</option>"

adoRs.movenext
loop


creaCombo = str&"</select>"
adoRs.close
Cn.Close

Set adoRs = Nothing
Set Cn = Nothing

end function


mentre questa è la funzione jscript per l'invio del form richiamata da onChange di select:

function inviaForm(idVal, idReg){

if(idReg==0){
alert('selezionare un valore per il campo Regione')
return;
}
document.form1.action = 'modifica.asp?id='+idVal+'&searchR='+idReg
document.form1.submit();
}