Avatar billede Slettet bruger
17. maj 2005 - 23:54 Der er 31 kommentarer og
1 løsning

"Usynlig" dropdown menu

Hejsa

Har et lille problem med en kontakt side.
Jeg her en dropdown menu på min kontakt side, hvor der er et punkt, som hedder køb af mobil. Nu vil jeg gerne ha det sådan at når man vælger køb af mobil, så kommer der en ny dropdown box op, med de forskellige mobiler der er til salg.

Har lavet en del, men det virker ikke helt efter princippet !!

<html>

<head>
<meta http-equiv="Content-Language" content="da">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>kontakt</title>
</head>

<body>
<p align="center">Kontakt
</p>
<form method="POST" action="kontakt_send.asp">
<table border="0" width="100%" id="table1">
    <tr>
        <td>Navn :</td>
        <td><input type="text" name="navn" size="20"></td>
    </tr>
    <tr>
        <td>Email :</td>
        <td><input type="text" name="email" size="20"></td>
    </tr>
    <tr>
        <td>Angående :</td>
        <td><select size="1" name="ang">
        <option value="Køb af mobil">Køb af mobil</option>
        <option value="">Salg af mobil</option>
        <option value="Angående mobil">Angående mobil</option>
        <option value="Andet">Andet</option>
        <option selected>----VÆLG HER----</option>
        </select>

<div> 
<form name="dropDownForm">
<select name="dropdownmenu" size=1 onChange="goToURL(this.form)">
    <option selected value="">Kategorier
<%
Response.Buffer = True
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=d:\web\localuser\pivskid.dk\database\mobilsalg.mdb"

strSQL = "SELECT * FROM produkter ORDER BY id"
Set rs = conn.Execute(strSQL)

do while not rs.EOF
%>
    <option value="<%=rs("navn")%>"><%=rs("navn")%>
<%
rs.movenext
loop
RS.Close

conn.Close
Set conn = nothing
Set strSQL = nothing
%>
  </select>

              </div>

        </td>
    </tr>
    <tr>
        <td>Besked :</td>
        <td><textarea rows="8" name="besked" cols="36"></textarea></td>
    </tr>
</table>

        <p><input type="submit" value="Send" name="B1"> <input type="reset" value="Nulstil" name="B2"></p>
</form>

</body>
</form>
</html>
Avatar billede thesurfer Nybegynder
18. maj 2005 - 00:05 #1
1) Du skal afslutte din form, inden du starter på en ny.. dvs:

<form..>
noget indhold her
</form>

<form..>
form nummer 2
</form>

osv..

2) Husk: Du kan kun submitte 1 form, per side.. dvs, enten den øverste eller den nedereste..

3) Jeg kan se, at du har en funktion der hedder "goToURL".. hvordan ser den ud?
Avatar billede Slettet bruger
18. maj 2005 - 00:08 #2
Det er fordi jeg har snuppet den fra en af mine andre sider, når man i den første dropdown menu vælger 1 bestemt punkt, så skal der dukke en anden dropdown menu op, hvor man så kan vælg ud fra en db
Avatar billede thesurfer Nybegynder
18. maj 2005 - 00:10 #3
Husk lige dine gamle spørgsmål:
http://www.eksperten.dk/list.phtml?spm_creator=vtmserver&status_1=on&status_2=on&status_3=on&status_4=on

Der er en del der afventer svar fra dig.. når problemet er løst, skal du belønne den/de der har hjulpet..

Jeg kan se, at du er ved at snuppe pointsne selv her: http://www.eksperten.dk/spm/611234
Avatar billede Slettet bruger
18. maj 2005 - 00:13 #4
der var jo ikke nogen svar

Nok min fejl !! Sorry
Avatar billede thesurfer Nybegynder
18. maj 2005 - 00:16 #5
Jeg kan også se, at jeg har mindet dig om det (16/05-2005 22:45:55): http://www.eksperten.dk/spm/607253

Følg venligst op på det, inden du går videre med at stille spørgsmål.

-- Læs venligst:
ExpFAQ - http://expfaq.1go.dk
Ekspertens regler: http://www.eksperten.dk/regler.phtml

Det er 2 gode links, så du kan undgå at træde folk over tæerne.. læs dem for din egen skyld.. så har du bedre chancer, for at få hjælp i fremtiden..
Avatar billede thesurfer Nybegynder
18. maj 2005 - 00:16 #6
Nu skal jeg nok holde op, med at kører op dig :-)
Tror at du har forstået budskabet :-)
Avatar billede Slettet bruger
18. maj 2005 - 00:17 #7
okai
Avatar billede Slettet bruger
18. maj 2005 - 00:17 #8
helt klart
Avatar billede Slettet bruger
18. maj 2005 - 00:18 #9
Har nok lavet lidt for meget kage
Avatar billede thesurfer Nybegynder
18. maj 2005 - 00:20 #10
De fleste mennesker laver fejl.. så det er godt at de kan rette op på det.. enten selv, eller med hjælp fra andre :-)

Vurder spørgsmålene, og smid noget feedback til brugerene.. f.eks. i form af points, svar på spørgsmål, bedre forklaring af problemet hvis de ikke forstår det, osv.. Det vil klart hjælpe på humøret og din situation..
Avatar billede Slettet bruger
18. maj 2005 - 00:22 #11
ja det er rigtig nok
Avatar billede Slettet bruger
18. maj 2005 - 00:40 #12
Sådan har været igang med at rette op på mit dårlige ryh
Avatar billede thesurfer Nybegynder
18. maj 2005 - 00:42 #13
Det går da fremad :-)
Avatar billede Slettet bruger
18. maj 2005 - 00:43 #14
Håber jeg da, har jo stadigvæk det her problem at kæmpe med hehe
Avatar billede Slettet bruger
18. maj 2005 - 09:11 #15
Nå men tilbage til det her spørgsmål, håber da at der er nogen der kan hjælpe.

Opgaven går ud på at lave en kontakt formular, med følgende oplysninger

Navn
Email
Besked
Angående (Rulleliste / dropdown)
Følgende punkter skal så ligge i rullelisten :
Salg Af Mobil
Køb Af Mobil
Angående Mobil
Andet

Når man så vælger "Køb Af Mobil" skal den aktivere en ny rulleliste, den skal inden man trykker på punktet ikke være synlig (ved siden af eller neden under).

I den nye rulleliste skal den så hive alle mobiler, som er til salg på siden frem fra et felt i en access database.

Hvor man så kan vælge en og herefter trykke send, har Jmail funktionen klar....
Det eneste jeg har problemer med er den dobbelte rulleliste.
Avatar billede thesurfer Nybegynder
18. maj 2005 - 10:46 #16
Det kan gøres på 2 måder:

1) Siden loades UDEN at mobil-data loades = færre data der skal loades = hurtigere load af side.
Hvis man så vælger mobil, SKAL siden loades igen, da data skal hentes fra databasen..
Det gode: brugeren henter kun de data han/hun skal bruge
Det dårlige: hvis brugeren vil bruge "Køb Af Mobil", skal siden reloades

2) Al data, inklusiv mobil-data, loades = mere data = længere load tid, men ikke meget.
Det gode: hvis brugere vil bruge "Køb Af Mobil", skal side IKKE loades igen
Det dårlige: brugeren skal downloade en masse data, selvom han muligvis ikke skal bruge "Køb Af Mobil"


-- Hvilken metode vil du bruge?
Avatar billede Slettet bruger
18. maj 2005 - 15:49 #17
Den sidste af de 2 foretrækker jeg, men er da ganske villig til at se eksempler på begge vist der er en mulighed for det, til evt. senere brug
Avatar billede thesurfer Nybegynder
20. maj 2005 - 12:18 #18
Kigger på det i løbet af i dag..
Avatar billede Slettet bruger
20. maj 2005 - 15:01 #19
Alle tiders :) vist du vil kan du fange mig på msn eller icq
Avatar billede thesurfer Nybegynder
20. maj 2005 - 15:28 #20
Sådan som jeg forstår det ([] = input, textarea, select eller submit):

Navn: [input]
Email: [input]
Angående: [select]
-- hvis "Angående" = "Køb af mobil", vis: Model: [input]
Kategori [select]
Besked: [textarea]

[submit]

dvs:

1) Man indtaster navn, email og vælger "angående".
2) Hvis man vil købe en mobiltelefonen, vælger man "Køb af mobil", hvorefter der kommer en ny Select ("Model"). Her vælger man modellen.
3) Man vælger kategori ?
4) Man indtaster en besked
5) Man submitter oplysningerne..

Men - Hvad skal onChange="goToURL(this.form)" i kategori-select bruges til?
Avatar billede Slettet bruger
20. maj 2005 - 15:54 #21
den skal jeg ha slettet, den brugte jeg på en side, hvor den skulle åbne i en iframe

Nu skal jeg så se at bygge det hele ind i systemet
Avatar billede Slettet bruger
20. maj 2005 - 16:09 #22
<form method="POST" action="kontakt_send.asp">
<table border="0" width="100%" id="table1">
    <tr>
        <td>Navn :</td>
        <td><input type="text" name="navn" size="20"></td>
    </tr>
    <tr>
        <td>Email :</td>
        <td><input type="text" name="email" size="20"></td>
    </tr>
    <tr>
        <td>Angående :</td>
        <td>
        <select size="1" name="ang">
        <option value="Køb af mobil">Køb af mobil</option>
        <option value="Salg af mobil">Salg af mobil</option>
        <option value="Angående mobil">Angående mobil</option>
        <option value="Andet">Andet</option>
        <option selected>----VÆLG HER----</option>
        </select>



        </td>
    </tr>
    <tr>
        <td>Besked :</td>
        <td><textarea rows="8" name="besked" cols="36"></textarea></td>
    </tr>
</table>

        <input type="submit" value="Send" name="B1">
        <input type="reset" value="Nulstil" name="B2">
</form>
Avatar billede Slettet bruger
20. maj 2005 - 16:11 #23
Sådan ser min form ud, på det nuværende tidspunkt... Ved ikke lige helt hvordan du mener at det skal sættes ind ?
Avatar billede Slettet bruger
20. maj 2005 - 16:26 #24
Vel at mærke den en af dem, skal jo bruge en selected mere.... Men skal eftersom jeg kan forstå vel tage udgangspunkt i den første form
Avatar billede thesurfer Nybegynder
20. maj 2005 - 20:53 #25
ok.. kigger på det..
Avatar billede thesurfer Nybegynder
20. maj 2005 - 21:04 #26
Det her burde virke.. hvis det ikker virker, kan det være i RS-delen.. jeg har ikke brugt en database..

Hvis der er fejl, husk at angive fejlmeddelelse og linienummer..

<form method="POST" action="kontakt_send.asp">
<table border="0" width="100%" id="table1">
    <tr>
        <td>Navn :</td>
        <td><input type="text" name="navn" size="20"></td>
    </tr>
    <tr>
        <td>Email :</td>
        <td><input type="text" name="email" size="20"></td>
    </tr>
    <tr>
        <td>Angående :</td>
        <td>
        <select size="1" name="ang" onchange="this.form.mobil.style.display=(this.value=='Køb af mobil')?'':'none';">
        <option value="Køb af mobil">Køb af mobil</option>
        <option value="Salg af mobil">Salg af mobil</option>
        <option value="Angående mobil">Angående mobil</option>
        <option value="Andet">Andet</option>
        <option selected>----VÆLG HER----</option>
        </select>
                <select name="mobil" style="display:none">
                <option value="--Vælg Model--" selected>--Vælg Model--</option>
                <%
               
                ' her åbner du forbindelsen til databasen
                ' set rs = ....
                ' og så:

                do while not rs.EOF
            response.write "<option value=""" & rs("navn") & """>" & rs("navn") & "</option>"
                rs.movenext
                loop
                RS.Close

                conn.Close
                Set conn = nothing

                %></select>
        </td>
    </tr>
    <tr>
        <td>Besked :</td>
        <td><textarea rows="8" name="besked" cols="36"></textarea></td>
    </tr>
</table>

        <input type="submit" value="Send" name="B1">
        <input type="reset" value="Nulstil" name="B2">
</form>
Avatar billede thesurfer Nybegynder
20. maj 2005 - 21:06 #27
Du kan evt også tilføje " & vbCrLf" så HTML-koden ser pæn ud:

response.write "<option value=""" & rs("navn") & """>" & rs("navn") & "</option>" & vbCrLf
Avatar billede Slettet bruger
20. maj 2005 - 23:30 #28
okai så vidt så godt, det virker....
Nu mangler jeg sådan set jo bare at få mobilen, som de vælger over i mail afsenderen.
Min kode til Kontakt_send.asp siden, ser således ud :

<%

Dim objMail ' Definer en variabel til mail objektet

' Følgende opretter objektet i variablen så vi kan arbejde med det
Set objMail = Server.CreateObject("JMail.SMTPMail")
objMail.ContentType = "text/html"
objMail.ServerAddress = "smtp.unoeuro.com"
objMail.Priority = 3

' Opsæt afsender oplysningerne - FromName kan udelades
objMail.sender = "mobilsalg@pivskid.dk" ' En gyldig afsender e-mail adresse

' Herefter tilføjer vi en modtager adresse - dvs. den mailen skal sendes til
  objMail.AddRecipientEx "vtm_pivskid@hotmail.com", ""
' "Modtagerens Navn" kan udelades

' Tilføj emnet på e-mailen
objMail.Subject = "" & request.form("ang") & ""


' Til sidst skal vi så bare have tilføjet indholdet i mailen,
' denne gang i HTML format.
' For at gøre det lidt lettere er der her oprettet
' endnu en variable til at indeholde eksempel-mailens
' indhold.

Dim strHTMLBody

strHTMLBody = "<b>Navn: " & request.form("navn") & "</b>" & vbCrLf & "<br><b>Email: <a href='mailto:" & request.form("email") & "'>" & request.form("email") & "</a></b>" & vbCrLf & "<br><br> <b>Besked: " & Request.form("besked") & "</b>"

' Så tilføjer vi e-mailens indhold :
objMail.Body = strHTMLBody

objMail.Execute
response.write("Der er nu sendt en mail")
%>
Avatar billede thesurfer Nybegynder
21. maj 2005 - 13:24 #29
Jeg har opdateret koden lidt.. De respektive linier skal nu se sådan ud:

-- formen (erstat Select-Ang-linien med denne):

        <select size="1" name="ang" onchange="objMobil=this.form.mobil; objMobil.style.display=(this.value=='Køb af mobil')?'':'none'; if (objMobil.style.display=='none') objMobil.value='--Vælg Model--';">


-- mail-koden (erstat "strHTMLBody"-linien med alle disse linier):


strHTMLBody = ""
strHTMLBody = strHTMLBody & "<b>Navn: " & request.form("navn") & "</b>" & vbCrLf


strHTMLBody = strHTMLBody & "<br><b>Email: <a href='mailto:" & request.form("email") & "'>" & request.form("email") & "</a></b>" & vbCrLf

if request.form("ang") = "Køb af mobil" and request.form("mobil") <> "--Vælg Model--" then
  strHTMLBody = strHTMLBody & "<br><br> <b>Ønsker at købe: " & Request.form("mobil") & "</b>" & vbCrLf
end if

strHTMLBody = strHTMLBody & "<br><br> <b>Besked: " & Request.form("besked") & "</b>" & vbCrLf


Jeg har sat et check ind, som checker om "Køb af mobil" er valgt i "Ang", og om der er valgt en mobiltelefon. Hvis begge kriterier er opfyldt, tilføjes "Ønsker at købe: XXXX" hvor "XXXX" er modellen/navnet på telefonen.

Resten af koden er den samme.

- Smider lige et svar.
Avatar billede Slettet bruger
22. maj 2005 - 14:51 #30
Det hele virker som det skal, så takker mange gange for hjælpen :)
Du kan se resultatet inde på www.mobilsalg.pivskid.dk
Avatar billede thesurfer Nybegynder
22. maj 2005 - 17:17 #31
Held og lykke med sitet :-)
Takker for points :-)
Avatar billede Slettet bruger
22. maj 2005 - 18:28 #32
De er velfortjent :)
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