Javascript: Räkna ihop värden i formulär
Hej, jag håller på och utvecklar ett beställningsformulär till en hemsida jag gör. I det har jag fyra stycken olika "antal-fält"... Där besökaren skriver in det antal av varje produkt hon vill köpa. Jag skulle vilja ha ett script som räknar ihop antalen och skapa en liten formel. Det är alltså 10st produkter som skall säljas. Och grejen är att man får mängdrabatt när man köper flera. Så här kan vi säga att det ser ut: 1st 99kr 2st 179 3st 249 4st 200kr och om man köper t.ex 5st kostar det totalt 250:-, 6st 300kr osv osv. Ja ni hajjar. Inte smarta priser, men det är bara ett exempel. Under tiden dom skriver in vill jag att det ska uppdateras under formuläret, där det ska stå "Totalt att betala: 179:-" osv osv osv. Hur jag gör detta vet jag inte =) Jag antar att det ska göras med Javascript och inte ASP eftersom jag vill att totala summan ska uppdateras direkt när kunden ändrar något. Tacksam för svar! / Oskar
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
beror lite på hur du tänker lägga upp sidan skulle jag tro
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
På vilket sätt då menar du?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
ska du t.ex radda alla produkter, ha en liten ruta för varje där du skrivet i antal och samtidigt som du skriver ska det ändras?
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
det ser typ ut så här Antal: Produkt 1, á 100:- Produkt 2, á 100:- Produkt 3, á 100:- Produkt 4, á 100:- Totalt att betala: XX:- det är alltså talen inom som ska räknas ihop och göra en formel av så att man kan få fram rabattan vid "Totalt att betala"
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
jag skulle gjort såhär: = textruta på textrutan kör du en onkeypress eller vad det heter, som kör en funktion som bara tar värdet ur rutan, priset från en annan ruta förslagsvis som är gömd, räknar ut rabbaten typ proset-25*antal eller vad som helst, räknar ihop det nya antalet med det som redan finns i totalt att betala som också är en ruta. nåt sånt
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
hm. okej men jag kan inget om hur jag ska skriva koden asså. jag tänkte typ om man la ihop alla värdena från textruta 1-4... och sen typ.. if antal = 2 then pris = 179:- osv osv är det smart trotr du?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
nej det tror jag inte men det är väl enda lösningen om du inte har någon metod att dta av. typ att för varje du köper dras det av en procent som gångras med antalet, annars kan det nog bli svårt
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
okej. hur skriver jag för att kunna ta värdena från dom fyra textrutorna och printa det på webbsidan?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
det här är en kod jag använder för att räkna ut med <script type="text/javascript"> <!-- function berakna() { var one = eval(document.step2.bredd.value) var two = eval(document.step2.langd.value) var three = eval(document.step2.djup.value) var antal = one * two * three document.step2.qty.value = antal; } --> </script> den hämtar från fälten bredd, langd och djup och lägger ihop dem. vet inte riktigt hur du skulle göra dina det finns nåt sätt tror jag att loopa igenom alla textfält men jag vet inte riktigt
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
Men alltså. Jag vill ha det så enkelt som möjligt. Det enklaste måste ju vara att helt enkelt ta värdena från fälten som heter antal1, antal2, antal3, antal4... och sen lägga ihop dom. Och sen göra en if-sats där, beroende på hur stort antal det blev, man helt enkelt räknar ut så som jag skrev förut... if antal = 2 then pris = 179:-
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
ja men om någon vill beställa 100? en jäkla massa ifsatser men det är väl enkelt, men fult ;P du kan testa lite
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
ingen kommer beställa 100st. =) högst 4st skulle jag tro. skulle du vilja hjälpa mig att skriva koden?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
ska testa mest för att jag själv vill se hur man kan göra javascript är ett gissel
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
nhoj. schysst! ja javascript är minsann inte min starka sida.
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
files.upl.silentwhisper.net sådär ser mitt formulär ut.. jag vill bara att dom fyra rutorna ska plussas ihop och sen räknas ut.. och sen presenteras vid "Totalt att betala" i real time.
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
http://melkermedia.se/c/test/ titta där, kika källan och kopiera :P
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
Tack!! Kan jag på något sätt göra så att jag inte behöver någon "räkna ut"-knapp? utan att det uppdateras direkt i rutan?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
okej den är aningen svag man måste siffror i båda textrutorna, ingen kontroll görs där, max två kan du köpa nu orkade inte lägga in fler.
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
hm, ja, det är ju en bit på vägen iaf. Men jag vet inte hur jag ska fortsätta. Skulle vi kunna sätta oss tillsammans och försöka skräddarsy den, eller varken vill eller orkar du inte?=)
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
dy dyller på var three = eval(document.test2.f3.value) var four= eval(document.test2.f4.value) ... sen lägger du ihop allt på var prod = one + two + three + four... sen lägger du bara till antal textrutor med rätt namn på alla textrutor kan du typ skriva onKeyPress="ber();" eller hur det blir
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
aha okej. ja jag har nu gjort själv så att jag lagt till alla fyra.. ska testa med onkeypress
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
onKeyPress="ber();" på alla inputs funkade inte.
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
sen lär du kolla om värdena är nummer t.ex eller om du gör en dropdown där man väljer en siffta kanske är bättre, då slipper du massa slit
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
när jag skrivit onKeyPress="ber();" på alla så uppdateras det visserligen.. fast det står undefined.. och det rätta talet kommer fram när man klickar på räkna
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
ja det kanske är enklare? Slipper jag att behöva göra något som kollar så att det är inskrivet en siffra i rutan då?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
japp du skriver ju färdiga värden i dropdownmenyn som bara är siffror.
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
Fast borde man inte bara kunna skriva: if f1 = 0 then if f1 = then Vad tror du om det?
Medlem i Mobbade Whoa Användare Crew M.W.A http://www.otechdesign.com
jo!
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
men jag kan inte sånt i javascript
Denna användare har skrivit alla inlägg där användaren har tagits bort från whoa.
jag har inte tid att mecka till det helt färdigt men det här ska funka... du kan även modifiera det hela om du vill... <script> var seksum = 0; function summeraPris(thisObject,thisValue){ if (document.prislista.checked){ /* 100 är priset på produkten */ seksum = (seksum - (thisValue * 100.00)); } else { seksum = (seksum + (thisValue * 100.00)); } document.prislista.seksum.value = Math.round(seksum*Math.pow(10,2))/Math.pow(10,2); } </script> <nobr><input type="text" name="seksum" value="0.00" class="normalbold" size="8" style="width:100;text-align:right;b order:none;"> SEK</nobr><br /><br /> <input type="text" value="" name="check" onchange="summeraPris('check',document.prislista.check.value)">< ;br /><br />
"Skiing without avalanches would be the perfect sport. On the other hand it's what makes it fun."