webForumDet fria alternativet

Beräkning av stugpris

3 svar · 260 visningar · startad av hypatia

hypatiaMedlem sedan feb. 20016 388 inlägg
#1

Nu ska jag be om hjälp med en skoluppgift... ;)

Jag har gjort ett formulär för att boka en stuga online, som finns på http://hem.bredband.net/b103355/www/inlupp2 och nu ska vi gå vidare med uppgiften.

Efter att kunden har fyllt i fälten ska priset för den valda stugan räknas ut. Olika veckor ger olika rabatt och kostnader tillkommer/rabatt ska dras beroende på vilka andra fält de kryssat i...

Jag vet inte vilket sätt som är det smartaste att gå vidare nu och hoppas på lite "hjälp till självhjälp", dvs. förslag på strategi, inte färdiga kodförslag. ;)

------------------
It is vain to do with more what can be done with less. (Ockham's Razor)

JojoxxMedlem sedan juni 20004 308 inlägg
#2

Ok. Börja med de fasta priserna. I detta exempel kan det vara bra att börja med stugpriserna. Skapa en array av de stugpriser som finns.

var stugpriser = new Array(1000,1500,2000);

Sedan hämtar du aktuellt stugpris med stugpriser[document.forms.formulärsnamn.listnamn.selectedIndex] Sedan kanske du har en avgift / vuxen. Multiplicera parseInt(document.forms.formulärsnamn.fältnamn.value) med avgiften. Och lite rabatt;
if(document.forms.formulärsnamn.checkboxnamn.checked) summa*=0.8
För 20 % rabatt.

Hoppas det var lite hjälp på traven.

------------------
/ J

[Redigerat av Jojoxx den 01 okt 2001]

hypatiaMedlem sedan feb. 20016 388 inlägg
#3

Tack så mycket för hjälpen Jojoxx, men jag har fastnat ändå... Har nog inte riktigt koll på var alla ; och { osv. ska sitta för att funktionerna ska fungera eller när man måste deklarera variabler och inte...

Ska ta mig till biblioteket idag för att låna en bok och läsa mig till hur det fungerar. Sedan återkommer jag nog med fler frågor.

Några små frågor först.

Stugpriset är inte fast utan beror dels på val av stuga och dels på antalet vuxna/barn, t.ex. stuga A kostar per vecka 1000 kr för vuxna och 750 kr för barn. Det finns tre stugtyper så jag har sex olika priser som ska multipliceras med antalet vuxna respektive barn. Kan man göra en tvådimensionell Array som letar efter värden från två formulärsfält?

Går det att göra så att ett fält blir "nollat" om man inte fyller i det? T.ex. om man inte fyller i antal barn, kan man då göra så att siffran 0 fylls i där innan priset för stugan räknas ut?

------------------
It is vain to do with more what can be done with less. (Ockham's Razor)

JojoxxMedlem sedan juni 20004 308 inlägg
#4

Stugpriset är inte fast utan beror dels på val av stuga och dels på antalet vuxna/barn, t.ex. stuga A kostar per vecka 1000 kr för vuxna och 750 kr för barn. Det finns tre stugtyper så jag har sex olika priser som ska multipliceras med antalet vuxna respektive barn. Kan man göra en tvådimensionell Array som letar efter värden från två formulärsfält?

2-dimensionella arrayer (aka matriser) går att skapa, men det behöver du inte göra här. Skapa bara 2 vanliga arrayer, stugprisvuxen och stugprisbarn. Titta även igenom priserna. Är det alltid så att barn betalar 3/4 (75%) av vuxen kanske det är snyggare med bara en array.

Går det att göra så att ett fält blir "nollat" om man inte fyller i det? T.ex. om man inte fyller i antal barn, kan man då göra så att siffran 0 fylls i där innan priset för stugan räknas ut?

Det är kanske snyggast att göra direkt i formulärsfältet;

<input type="text" name="barn" value="0" onChange="this.value=(isNaN(parseInt(this.value)))?0:parseInt(this.value);">

------------------
/ J

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)