ho fatto così, ovviamente al primo colpo non va...:rollo:
ti posto anche l'asp che uso, per comodità:
codice:
<select name="localita" onChange=onchange="window.location.href='annunci.asp?zona='+this.value;">												
																<% 
	dim rsLocalita, sqlLocalita												set rsLocalita = server.CreateObject("ADODB.recordset")								sqlLocalita = "SELECT * FROM Localita"
        rsLocalita.open sqlLocalita, objConn
%>
																<% DO UNTIL rsLocalita.eof %>
<option value="<%= rsLocalita("localita")%>"><%= rsLocalita("localita")%></option>
<% 
	rsLocalita.movenext 
	loop 
%>
</select>
<select name="quartieri">
<%
dim zona
zona = request.QueryString("zona")
																if zona <> "" then
																	dim rs1, sql1
	set rs1 = server.CreateObject("ADODB.recordset")
	sql1 = "SELECT * FROM Localita INNER JOIN Quartieri ON Localita.ID = Quartieri.id_localita Where Localita.localita = " & zona
																	rs1.open sql1, objConn
%>
<% DO UNTIL rs1.eof %>
<option value="<%= rs1("Quartieri.quartiere")%>"><%= rs1("Quartieri.quartiere")%></option>
<% 
	rs1.movenext 
	loop 
%>
<% else 
																	dim rs2,sql2
	set rs2 = server.CreateObject("ADODB.recordset")
	sql2 = "SELECT * FROM Quartieri" 
	rs2.open sql2, objConn
%>
<% DO UNTIL rs2.eof %>													<option value="<%= rs2("quartiere")%>"><%= rs2("quartiere")%></option>
<% 
	rs2.movenext 
	loop 
%>
<% end if %>
</select>
<input type="image" src="images/freccia_vai2.gif" name="invia" value="invia"> 
<input type="hidden" value="invia" name="invia">
</form>
Al variare della scelta della prima select, non ci sono conseguenze sulla seconda..