Avatar billede swing Nybegynder
07. november 2001 - 12:12 Der er 17 kommentarer og
2 løsninger

dropdown boks

Hej Eksperter!
Jeg henter data fra en db ind i denne dropdownboks. Men når jeg så henter værierne ind i en update så viser den ikke den aktuelle værdi men går øverst i listen og henter den første værdi. Hvordan får jeg hentet værdien så den også vises når jeg henter den ind i en update?
Koden:

<select name=\"producttype\">
          <%     Do While not ani.EOF %>
          <option value=\"<%=ani(\"producttype\")%>\" selected> <%=ani(\"producttype\")%></option>
          <% ani.MoveNext
            Loop
            ani.Close
            %>
        </select>
Avatar billede juggalo Nybegynder
07. november 2001 - 12:26 #1
Så vidt jeg kan se er problemet, at du forsøger at sætte ALLE som selected - og det kan man ikke

/Juggalo
Avatar billede -sofus- Nybegynder
07. november 2001 - 12:27 #2
Jeg har lavet en lignede...
håber du kan bruge den (:

<select size=\"1\" name=\"navn\" class=\"input\">
<option value=\" \">Vælg hvad du vil</option>

<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath (\"db.mdb\")
set rs = Conn.execute(\"select * from tabel\")

if rs.EOF then
Response.write \"Databasen er tom.\"
else
Do Until rs.EOF

%>



  <option value=\"<%= rs(\"navn\") %>\"><%= rs(\"navn\") %></option>

<%RS.MoveNext
Loop
end if

Conn.Close
Set Conn = Nothing%>
</select>
Avatar billede swing Nybegynder
07. november 2001 - 14:50 #3
Altså den er lidt svær :-)
Hvordan forklarer jeg det. Hmm jo altså jeg kan godt hente data ind i den dropdownboks og jeg kan også vælge den værdi jeg vil og så opdatere. Ingen problemer der. Men næste gang jeg vil ændre noget et andet sted i tabellen - ja så tager den der dropdownboks igen den øverste værdi og så skal jeg huske at rette den. Og det er jo lidt besværligt.
Avatar billede swing Nybegynder
07. november 2001 - 16:13 #4
-sofus- >> jeg har prøvet din løsning, men den virker lige som min egen kode - men tak for forsøget!
Avatar billede excession Nybegynder
07. november 2001 - 16:41 #5
du kan ikke give hver option et navn eller en værdi:

<form ACTION=\"kjkjhk.asp\" METHOD=\"GET\">

<select name=\"navn\">
  <option>swing</option>
  <option>-sofus-</option>
  <option>excession</option>
</select>

<input type=\"SUBMIT\">
</form>

-- xs
Avatar billede excession Nybegynder
07. november 2001 - 16:44 #6
browseren returnerer en værdi svarende til den streng/string/tekst/whatever man har skrevet som option

-- xs
Avatar billede eagleeye Praktikant
07. november 2001 - 16:56 #7
Hvorfra får du hvilken opten som skal vælges???

Så indføre du denne if i option tagen:
if valgtType = ani(\"producttype\") then response.write \" selected\"
i stedet for den selected du har til at stå.


<select name=\"producttype\">
<%    Do While not ani.EOF %>
<option value=\"<%=ani(\"producttype\")%>\" <%if valgtType = ani(\"producttype\") then response.write \" selected\"%>> <%=ani(\"producttype\")%>
</option>
<% ani.MoveNext
  Loop
  ani.Close
            %>
        </select>
Avatar billede swing Nybegynder
07. november 2001 - 22:09 #8
xs>> jo det kan jeg godt, men det gider jeg ikke, jeg er så doven at jeg vil hente det fra databasen :-)
Avatar billede swing Nybegynder
07. november 2001 - 22:11 #9
eagleeye>>
Det giver desværre samme resultat - når man henter værdien igen springer den op i databasen og henter den øverste værdi
Avatar billede eagleeye Praktikant
07. november 2001 - 22:13 #10

Hvorfra får du hvilken som skal vælges???
Avatar billede excession Nybegynder
07. november 2001 - 22:14 #11
swing: ja, jeg er godt klar over du vil hente værdier fra db\'en men du kan stadig ikke give hver option en value eller name

-- xs
Avatar billede swing Nybegynder
07. november 2001 - 22:27 #12
xs>> ok - jeg henter dem nu - ind i en administratordel hvor jeg kan rette eller slette.
prøv evt. at se med her: www.ebberup.dk/tests/adminsystem/admin.asp

trykker man på slet/ret kommer man ind og den man har trykket på får ikke værdien med i dropdownboksen der vælger den den første i databasen.

Jeg håber dette kan hjælpe videre. Jeg smider lige nogle flere points i
Avatar billede excession Nybegynder
07. november 2001 - 22:28 #13
jeg ved ikke om det er mig der misforstår, men jeg skal prøve at uddybe..

du bruger en løkke til at udskrive data/værdier til en list box.

du kan ikke give hver option en værdi. det er kun i select tagget du kan give et navn.

så kan du request.form(\"producttype\") og få værdien af det der er valgt.
Avatar billede eagleeye Praktikant
07. november 2001 - 22:30 #14
Jo en Option kan godt havde en value

<option value=\"1\">Bruger 1</option>
<option value=\"2\">Bruger 2</option>
<option value=\"3\">Bruger 3</option>
Avatar billede swing Nybegynder
07. november 2001 - 22:33 #15
hmm ok det kan måske ikke lade sig gøre

egaleeye og xs besvar her og i får 30 point hver for jeres hjælp

Avatar billede excession Nybegynder
07. november 2001 - 22:33 #16
hmm ok.  det er bare fordi jeg sidder med en bog som siger at man ikke kan.. :)

den siger iøvrigt at man ofte får fejl når man fejlagtigt tror man kan give et navn eller value for hver SELECTion i en liste..

men jeg mente også jeg havde gjort det for bare 10 dage siden..

-- xs
Avatar billede eagleeye Praktikant
07. november 2001 - 22:36 #17
OK.

Jeg har altid brugt at give en option en value. Det er muligt man ikke kan give hver option et navn..
Avatar billede excession Nybegynder
07. november 2001 - 22:37 #18
:)
Avatar billede swing Nybegynder
07. november 2001 - 22:40 #19
Tak for hjælpen :-)
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