Avatar billede kak Nybegynder
19. oktober 2001 - 14:18 Der er 12 kommentarer og
2 løsninger

Fejl ved <select...>

Nedenstående form virker ikke helt som den skal. Jeg vil gerne opdatere siden med en querystring, når man vælger et punkt i <select> boksen, men man skal vælge det samme punkt to gange, før \"cat\" bliver sendt som en querystring?!
Nogle gode forslag til det?


<form type=\"submit\" method=\"post\" name=\"CForm\" action=\"courses.asp?cat=<%=request.form(\"Cat\")%>\">

<select name=\"Cat\" size=\"1\" onChange=\"CForm.submit();\">
<%WHILE NOT rs1.EOF %>
  <option value=\"<%=rs1(\"Category\")%>\"><%=rs1(\"Category\")%></option>
<% rs1.movenext
  wend %>
</select>
</form>
Avatar billede cliche Nybegynder
19. oktober 2001 - 14:31 #1
Det er fordi at din querystring ikke indeholder noget data den første gang....

finder lige et link
Avatar billede tdaugaard Nybegynder
19. oktober 2001 - 14:32 #2
<form type=\"submit\" method=\"post\" name=\"CForm\" action=\"courses.asp?cat=<%=request(\"Cat\")%>\">

brug Request() istedet sådanne steder .. så er det lige meget om den er skrevet i adresse linien eller submitted via en form.
Avatar billede cliche Nybegynder
19. oktober 2001 - 14:33 #3
Ikke helt det samme som bliver diskuteret, men logikken er den samme
http://www.eksperten.dk/spm/5202
Avatar billede cliche Nybegynder
19. oktober 2001 - 14:34 #4
LOL yeah, kan se jeg er galt på den
Avatar billede tdaugaard Nybegynder
19. oktober 2001 - 14:36 #5
*g*
Avatar billede kak Nybegynder
19. oktober 2001 - 14:44 #6
Det hjælper ikke at lave det om til request(\"Cat\") og linket er ganske rigtigt ikke så relevant ;-)
Avatar billede tdaugaard Nybegynder
19. oktober 2001 - 14:57 #7
prøv desuden at lave method=\"get\" ustedet ...

uhm .. forøvrigt ... det der holder da ikke en meter .. det er jo helt forkert ..
<% strCat = Request(\"cat\") %>

<form method=\"get\" name=\"CForm\" action=\"courses.asp\">
  <select name=\"cat\" onChange=\"CForm.submit();\">
<%
      Do Until Rs.BOF Or Rs.EOF
          If Rs1(\"category\") = strCat Then strSel = \" selected\" Else strSel = \"\"
          Response.Write \"<option>\" & Rs1(\"category\") & \"</option>\" & vbCrLf
          Rs1.movenext
      Loop
%>
</select>
</form>
Avatar billede tdaugaard Nybegynder
19. oktober 2001 - 14:57 #8
Det er koden du skal bruge istedet:

<form method=\"get\" name=\"CForm\" action=\"courses.asp\">
  <select name=\"cat\" onChange=\"CForm.submit();\">
<%
      strCat = Request(\"cat\")
      Do Until Rs.BOF Or Rs.EOF
          If Rs1(\"category\") = strCat Then strSel = \" selected\" Else strSel = \"\"
          Response.Write \"<option>\" & Rs1(\"category\") & \"</option>\" & vbCrLf
          Rs1.movenext
      Loop
%>
</select>
</form> 
Avatar billede kak Nybegynder
19. oktober 2001 - 15:12 #9
I har begge ret.
Det eneste der skulle til, var at rette \"post\" til \"get\".
Tak for hjælpen ;-)
Avatar billede cliche Nybegynder
19. oktober 2001 - 15:18 #10
Tdaugaard, vil du ha de 15? synes nu at jeg var helt galt på den?
Avatar billede cliche Nybegynder
19. oktober 2001 - 15:18 #11
Men Kak, tak for omtanken :9
Avatar billede tdaugaard Nybegynder
19. oktober 2001 - 15:20 #12
cliche .. jaaa . hvis ikke det gør noget .. :o)
Avatar billede tdaugaard Nybegynder
19. oktober 2001 - 15:22 #13
kak, nej .. ikke kun post -> get ... prøv at se din kode .. du har et felt med navn \"cat\", det bliver overført når formen submittes, men hov .. du har også en i action=\"\" tingen:

action=\"courses.asp?cat=<%=Request.Form(\"cat\")%>\"

det er dårlig kodning ... Just a good advice, don\'t do that :o)
Avatar billede kak Nybegynder
19. oktober 2001 - 18:27 #14
Ok, kan godt se pointen, men det virker stadig hvis jeg alene skifter post til get.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester