poblaciones_ajax.asp
Código asp:
Ver originalDim buscarpor, oConn, rs, SQL, registros, z
Dim Comunidad, Provincia, Ciudad, Calle ' campos de la bd
Comunidad = 0
Provincia = 1
Ciudad = 2
Calle = 3
buscarpor = Split(Request.QueryString("mostrark"), "-")
' conexión a bd
Select Case UBound(buscarpor)
Case 0 :
SQL ="SELECT Comunidad, Provincia FROM Poblaciones WHERE Comunidad LIKE '"& buscarpor(0) &"%' GROUP BY Comunidad, Provincia ORDER BY Provincia asc"
set rs = oConn.Execute(SQL)
registros = rs.getrows()
Response.Write "Provincia<br /><select name=""s_2"" id=""s_2"" onchange=""Ciudad(document.getElementById('s_2').options[document.getElementById('s_2').selectedIndex].value, 3);"">"
Response.Write "<option value="""">Seleccionar Provincia</option>"
For z = 0 to UBound(registros,2)
Response.Write "<option value="""& buscarpor(0) &"-"& registros(Provincia,z) &""">" & registros(Provincia,z) & "</option>"
Next 'z
Response.Write "</select>"
rs.Close
Set rs = Nothing
oConn.Close
Set oConn = Nothing
Case 1 :
SQL ="SELECT Comunidad, Provincia, Ciudad FROM Poblaciones WHERE Comunidad LIKE '"& buscarpor(0) &"%' AND Provincia LIKE '"& buscarpor(1) &"%' GROUP BY Comunidad, Provincia, Ciudad ORDER BY Ciudad asc"
set rs = oConn.Execute(SQL)
registros = rs.getrows()
Response.Write "Ciudad<br /><select name=""s_3"" id=""s_3"" onchange=""Ciudad(document.getElementById('s_3').options[document.getElementById('s_3').selectedIndex].value, 4);"">"
Response.Write "<option value="""">Seleccionar Ciudad</option>"
For z = 0 to UBound(registros,2)
Response.Write "<option value="""& buscarpor(0) &"-"& buscarpor(1) &"-"& registros(Ciudad,z) &""">" & registros(Ciudad,z) & "</option>"
Next 'z
Response.Write "</select>"
rs.Close
Set rs = Nothing
oConn.Close
Set oConn = Nothing
Case 2 :
SQL ="SELECT Comunidad, Provincia, Ciudad, Calle FROM Poblaciones WHERE Comunidad LIKE '"& buscarpor(0) &"%' AND Provincia LIKE '"& buscarpor(1) &"%' AND Ciudad LIKE '"& buscarpor(2) &"%' GROUP BY Comunidad, Provincia, Ciudad, Calle ORDER BY Calle asc"
set rs = oConn.Execute(SQL)
registros = rs.getrows()
Response.Write "Calle<br /><select name=""s_4"" id=""s_4"">"
Response.Write "<option value="""">Seleccionar Calle</option>"
For z = 0 to UBound(registros,2)
Response.Write "<option value="""& buscarpor(0) &"-"& buscarpor(1) &"-"& buscarpor(2) &"-"& registros(Calle,z) &""">" & registros(Calle,z) & "</option>"
Next 'z
Response.Write "</select>"
rs.Close
Set rs = Nothing
oConn.Close
Set oConn = Nothing
End Select
NOTA: El código está editado con la solución después de subsanar el inconveniente
Suerte