du kunne f.eks. bruge strCountries = request.form("countries") og loope gennem option felterne.. når du så finder det der har været valgt, bruger du response.write " selected" i option tagget.
den resette til "Choose a country" og "Choose a city" fordi de 2 værdier er standard (første) værdier i din selectbox.. du kan ændre standard værdier med f.eks.: <option value="B" selected>Belgium</option> (ordet "selected")
Når du bruger form.submit() kan du ikke beholde værdien !-)
Een ganske indlysende mulighed er den thesurfer angiver, da du alligevel har et database-script som eksekverer din forespørgsel, men det er selvfølgelig et problem, at du så også serverside skal opbygge din butiksdatabase i asp-scriptet (det kommer vel fra en database !-)
En anden mulighed er at placere dit resultat i en anden (i)frame, som du så kan angive som target (hæ, jeg blev faktisk i tvivl om ikke formen alligevel kom tilbage ,-)
Ellers kan du jo bare smide de to værdier ind i url'en og genskabe dem derfra onload ...
hmm.. jeg kan ikke lide det der med at store/gemme ting i url.. så kan brugeren manipulere med det.. og giver fejl :) brug heller den anden metode.. for du aflæser alligevel hvilket felt det er der er valgt (ellers kan du ikke hente den rette information)
' SQL forespørgsel (find land som har stores) strSQL = "SELECT country.iso, country.name, city.city " & _ " FROM country INNER JOIN (city INNER JOIN store ON city.city = store.city) ON country.iso = city.country GROUP BY country.name, country.iso, city.city"
' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL)
While Not rs.EOF 'Get data into variables iso = rs("iso") country = rs("name") city = rs("city")
'Build javascript array if iso <> tmp then
'Build country select string strCountrySelect = strCountrySelect & "<option value=" & chr(34) & iso & chr(34) & ">" & country & "</option>" & vbcrlf
if firstTime then 'new country firstTime = false strJSarray = strJSarray & "stateNames[" & chr(34) & iso & chr(34) & "]=new Array(" & chr(34) & city else strJSarray = strJSarray & chr(34) & ")" & vbcrlf strJSarray = strJSarray & "stateNames[" & chr(34) & iso & chr(34) & "]=new Array(" & chr(34) & city end if
else 'same country strJSarray = strJSarray & chr(34) & "," & chr(34) & city
<% 'Check if form submit If Request.Form("states") <> "" Then ' SQL forespørgsel (find land som har stores) strSQL = "SELECT store.* " & _ " FROM city INNER JOIN store ON city.city = store.city " & _ " WHERE (((city.country)='" & Request.Form("countries") & "') AND ((city.city)='" & Request.Form("states") & "')) " & _ " ORDER BY store.name"
' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL)
'Loop recordset While not rs.EOF %> <b> <% if rs("name") <> "" then response.write (rs("name") & "<br>") end if %> </b> <% if rs("adr1") <> "" then response.write (rs("adr1") & "<br>") end if %>
<% if rs("adr2") <> "" then response.write (rs("adr2") & "<br>") end if %>
<% if rs("adr3") <> "" then response.write (rs("adr3") & "<br>") end if %>
<% if rs("zip") <> "" then response.write (rs("zip") & " ") end if %>
<% if rs("city") <> "" then response.write (rs("city") & "<br>") end if %>
<% if rs("phonetext") <> "" then response.write (rs("phonetext") & " ") end if %>
<% if rs("phone") <> "" then response.write (rs("phone") & "<br>") end if %>
<% if rs("email") <> "" then response.write (rs("email") & "<br>") end if %>
<% if rs("web") <> "" then response.write (rs("web") & "<br>") end if %> <br> <% rs.MoveNext Wend rs.close set rs = nothing End If %>
ahh.. nu forstår jeg det lidt bedre .. jeg trode "Country" var f.eks. "Denmark".. men det viser sig at "Country" er forkortelserne for landene.. f.eks. "DK"..
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.