Avatar billede floetti Nybegynder
15. april 2005 - 20:01 Der er 8 kommentarer og
1 løsning

OnSubmit og variabel skal med til næste side

Hej...

Jeg har en side med denne javascript kode. Den skal gøre det mulig at gå videre til næste side med en variabel (minnyepris) og skrive  prisen ind i (prisen):

onsubmit="return fixaction();"

og:
function fixaction();
{
document.frmpris.action = 'dinside.php?minnyepris=' + prisen;
return true;
}

Problemet er bare at jeg ikke kan finde ud af hvor jeg skal placere javascriptet henne!

Kan nogen hjælpe mig?

floetti
Avatar billede mads-lee Nybegynder
15. april 2005 - 20:16 #1
hvis det alligevel er PHP din side ville jeg bruge

på dinside.php

<input type="text" name="pris" value="<?=$_GET['minnyepris']?>">
Avatar billede thesurfer Nybegynder
15. april 2005 - 21:44 #2
Du kunne også bruge: document.frmpris.action = 'dinside.php?' + prisen;

og derefter hent det med:

loc = window.location.href;
prisen = loc.substring(loc.indexOf("?")+1);

Nu er prisen smidt ind i variablen "prisen".
Avatar billede floetti Nybegynder
16. april 2005 - 01:40 #3
Nu virker det at sende variablen videre, men nu får jeg kun værdien på en valgt komponent, altså ikke hele prisen!?
Avatar billede roenving Novice
16. april 2005 - 10:45 #4
Hvor har du da prisen ?-)

-- og egentlig kan du forkorte det til:

onsubmit="return fixaction(this);"

og:
<script type="text/javascript">
function fixaction(f){
  f.action = 'dinside.php?minnyepris=' + prisen;
  return true;
}
</script>
Avatar billede thesurfer Nybegynder
16. april 2005 - 18:57 #5
Han kommer herfra: http://www.eksperten.dk/spm/609450

Og jeg burde have brugt fixaction(this) :-)
.. må have været sent.. eller måtte have været træt.. kom til at putte et ";" efter funktionen ("function fixaction();")..
Avatar billede floetti Nybegynder
17. april 2005 - 22:38 #6
Hej igen...

Den siger det samme som før, jeg kan godt komme videre til næste side "dinside.php", men jeg får ikke den samlede værdi med i varablen.

eksempel:

Start pris: 2000,00

Tillægspriser:
1000,00 (valgt)
400,00
125,00 (valgt)
3000,00

Så trykker jeg på "Submit" og kommer til næste side, men så står (dinside.php?minnyepris=125,00) istedet for (dinside.php?minnyepris=3125,00)
Avatar billede floetti Nybegynder
17. april 2005 - 22:48 #7
Sådan... nu fik jeg fikset problemet... jeg måtte sætte sådan:

<script type="text/javascript">
function fixaction(f){
  f.action = 'dinside.php?minnyepris=' + Math.round((startpris+prisen));
  return true;
}
</script>

så blev alt talt sammen;)

-> roenving eller thesurfer, om i vil have points? så kan i lægge et svar - ellers lukker jeg bare;)

Jeg takker for hjælpen
Avatar billede thesurfer Nybegynder
18. april 2005 - 21:53 #8
Jeg vil tro, at du kan nøjes med parseInt(startpris+prisen).. så kan du også have kommatal..

Ang points: Nej tak.. har allerede fået i det andet spm :-)
Avatar billede floetti Nybegynder
18. april 2005 - 22:11 #9
ja... det kan jeg da;)
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