Frågan 27 feb. 2003 07:07 #1 Hej!
Varför kommer inte variabelvärdet med i urlen?
Nu ser det ut såhär: search.asp?variable=
(Drop down meny)
*River mitt hår*
<select name="cat" onchange="document.location.href='search.asp?variable=' + this.options[this.selectedIndex].value;">
<option selected><%=Recset("Category")%></option>
<% Do until RecSet.EOF %>
<option><%=Recset("Category")%></option>
<%Recset.movenext
loop %>
</select>
@nders Medlem sedan juni 2000 32 967 inlägg <option [b]value="<%=Recset("Category")%>"[/b]><%=Recset("Category")%></option>
Tack, nu funkar det.
Följdfråga, om jag istället vill posta variabelvärdet som ett formulär istället som jag kan plocka upp med Request.Form, hur skriver man om det då? (jag får "%20" för mellanrum i querystringen)
<option value="">Choose Category</option>
<% Do until RecSet.EOF %>
<option value="<%=Recset("Category")%>"><%=Recset("Category")%></option>
<%Recset.movenext
loop %>
</select>
@nders Medlem sedan juni 2000 32 967 inlägg Sätt action i <form>-taggen som vanligt dit du vill posta, och lägg submit i onchange.
<select name="cat" onchange="document.forms[0].submit();">
Du kan gott byta forms[0] till formulärets namn.
mvh
Det går också att hoppa över value och använda sig av text.
this.options[this.selectedIndex].text
Hej!
Hur menar du med "lägg submit i onchange" ? (jag vill inte ha någon submitknapp)
Nu ser det ut såhär.(inte klart ännu). Finessen är så att säga att när man valt i menyn så laddas sidan om automatiskt.
<FORM METHOD="POST" ACTION="search.asp" onchange="document.location.href='search.asp?variable=' + this.options[this.selectedIndex].value;">
<select name="cat">
<option value="">Choose Category</option>
<% Do until RecSet.EOF %>
<option value="<%=Recset("Category")%>"><%=Recset("Category")%></option>
<%Recset.movenext
loop %>
</select>
</FORM>
@nders Medlem sedan juni 2000 32 967 inlägg
Pellefant skrev:
Hur menar du med "lägg submit i onchange" ? (jag vill inte ha någon submitknapp)
Ta bort onchange ur <form>-taggen, det jag menade var "ändra onchange i din <select>, så formuläret postas istället." Använd koden från mitt förra inlägg.
mvh
Tackar, fick det att funka nu(har iofs inte testat att ta emot variabeln än, men det ska nog gå bra.
Fungerande kod:
<FORM METHOD="POST" ACTION="search.asp" >
<select name="cat" onchange="document.location.href='search.asp?variable=' + this.options[this.selectedIndex].text;">
<option value="">Choose Category</option>
<% Do until RecSet.EOF %>
<option value="<%=Recset("Category")%>"><%=Recset("Category")%></option>
<%Recset.movenext
loop %>
</select>
</FORM>
@nders Medlem sedan juni 2000 32 967 inlägg Nu skickar du ju med querystring i alla fall, istället för post, som jag trodde att du ville?
Så sant, jag lyckades gå hela cirkeln runt och få det till ungefär samma kod som i början av tråden.
*HAHA* Nej, jag pratar,skriver bara i nattmössan, dags att gå och läggs sig tror jag bestämt.
Godnatt alla!