Avatar billede larsholmgaard_dk Nybegynder
12. november 2001 - 17:13 Der er 8 kommentarer og
1 løsning

Overførsel af værdier i dropdown menuer til formular?

Forestil jer en side med oversigt over børnetøj. Der er f.eks. et par bukser man godt kunne tænke sig at købe. Man vælger størrelsen, farven og antal vha. dropdown menuer. Trykker man på en knap \'Læg i kurv\' bliver de værdier overført til en formular hvor man bare skal indtaste navn og adresse og trykke send.

Alt det er lavet, undtagen den del hvor man får værdierne fra dropdown-menuerne sendt til formularsiden. Hvordan gør man det uden ASP?

På forhånd mange tak, det er til en Handelsskole opgave.

Lars Holmgaard
Avatar billede jakoba Nybegynder
12. november 2001 - 18:46 #1
Dropdownbokse er også formular-elementer og den valgte værdi sendes med når formularen sendes.
Så medmindre dine dropdovnbokse skal ligge i en anden ramme er der ikke brug for at gøre noget specielt i den anledning. Sørg blot for at dine dropdownbokse er indeni den formular der sendes (mellem <form ...> og </form> kommandoerne)

mvh JakobA
Avatar billede larsholmgaard_dk Nybegynder
12. november 2001 - 19:39 #2
Det er de netop ikke! Det skal videregives til en helt anden html side hvor formularen er på. En check-out side.
Avatar billede jakoba Nybegynder
12. november 2001 - 20:07 #3
Ok:

<select  ...  onchange=\"parent.rammenavn.document.formnavn.feltnavn.value=this.options[this.selectedIndex].value\">
  <option value=\'\'>vælg en politiker</option>
  <option value=\"olsen\">stem på olsen</option>
  <option value=\"jensen\">stem på jensen</option>
...
</select>

når brugeren vælger noget bliver den tilsvarende værdi automatisk flyttet over i feltet \'feltnavn\' i formen \'formnavn\' der ligger i rammen med name=\'rammenavn\'

mvh JakobA
Avatar billede larsholmgaard_dk Nybegynder
12. november 2001 - 23:49 #4
Også hvis det ikke er en ramme men en helt anden html-side? Html siden bliver vist i samme ramme som den side man vælger tingene på...
Avatar billede jakoba Nybegynder
12. november 2001 - 23:58 #5
Det tør jeg ikke svare dig på uden at vide hvad relationen mellerm de to sider er. hvis et af dem direkte har åbnet det andet kan vi adressere os frem fra det ene til det andet (men ikke på samme måde som ovenfor).

Jeg er lidt usikker på hvad du mener med \'ramme\'. Du skulle vel ikke have siden liggende på nettet så jeg kan kikke på problemet.

mvh JakobA
Avatar billede larsholmgaard_dk Nybegynder
13. november 2001 - 22:00 #6
Du ville gøre mig og min kæreste (det er hendes projekt) en kæmpe tjeneste hvis du ville kigge på det hér: http://users.cybercity.dk/~dsl55354/

Gå ind under butik og klik på babywear fx. Hvordan får vi de valg videresendt til en formularside?

På forhånd tusinde tak - jeg hæver gevinsten til 75 point hvis du kan hjælpe!
Avatar billede jakoba Nybegynder
13. november 2001 - 23:38 #7
lad være med det. 45 er fint.

Såvidt jeg kan se findes den formular værdierne skal sendes over i slet ikke på det tidspunkt hvor kunden vælger varer. Så før værderne kan kommes i formularen skal de lagres et for en tid.

Det kunne vi meget passende gøre i rammen \'left2\' (den med menuen) for når den ramme een gang er hentet bliver den bare liggende.

ved tryk på læg i kurv skal data fra den valgte linie så overføres til en huskevariabel der:

<script type=\'text/javascript\'>

var denneSidesEmne = \'pige\';  // forskelligt for hver vareside.

function laegIKurv ( knap ) {
    var fe = knap.form.elements;
    for (var i=0; fe.length>i; i++ )
        if ( fe[i] == knap ) break;

    var selFarve = fe[i-3];
    if ( selFarve.selectedIndex == 0 ) {
        alert( \"Vælg venligst farve først\" );
        return;
    }
    var selSize  = fe[i-2];
    if ( selSize.selectedIndex == 0 ) {
        alert( \"Vælg venligst størrelse først\" );
        return;
    }
    var selStk  = fe[i-1];
    if ( selStk.selectedIndex == 0 ) {
        alert( \"Vælg venligst antal først\" );
        return;
    }

    if ( ! parent.left2.hukommelse ) parent.left2.hukommelse = new Array();
    var h = parent.left2.hukommelse;
    h[h.length] = denneSidesEmne +\",\"
                  +selFarve.options[selFarve.selectedIndex].text +\",\"
                  +selSize.options[selSize.selectedIndex].text +\",\"
                  +selStk.options[selStk.selectedIndex].text;

}; //end laegIKurv( Button object )

</script>

i alle dine kanpper (of de skal være type=\'button\', ikke type=\'submit\' lægger du så en onclick handeler

<input type=\"button\" value=\"Læg i kurv\" name=\"B1\" onclick=\"laegIKurv(this)\">

i rammen \'left2\' vil kunden så efterhånden få lavet en bestillingsliste.

På din indkøbskurv side kan du lægge den liste i en formular med

<form name=\'f2\' ...>
<textarea name=\'vareliste\' rows=8 cols=65 wrap=\'physical\'>
<script type=\'text/javascript\'>
if ( parent.left2.hukommelse ) {
    document.write( parent.left2.hukommelse.join(\'\\n\')
} else {
    document.write( \"du har ingenting i din indkøbskurv\" );
}
</script>
</textarea>

</form>

mvh JakobA
Avatar billede larsholmgaard_dk Nybegynder
25. november 2001 - 18:41 #8
Undskyld ventetiden, jeg havde helt glemt dette spørgsmål igen! Min kæreste var oppe og forsvare sit projekt og hun fik 11! Med pil opad!!

That\'s my girl... ;-)
Avatar billede jakoba Nybegynder
25. november 2001 - 19:04 #9
Tillykke !
og tak for pts.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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