Gå til innhold

Automatisk kalkulere felter i form


Anbefalte innlegg

Skrevet

Holder på med php-prosjekt. La oss si at jeg skal lage en form med følgende felter;

 

Tekst, Antall, Pris pr. stk eks. mva, moms%, Linjesum eks, Linjesum ink

 

og at jeg skal ha fem rader under der som jeg kan fylle inn i.

 

Jeg vil gjerne at hver rad skal kalkuleres (antall*pris pr. stk*mva%), noe som skal gi meg Linjesum eks, og linjesum ink for hver av de fem radene.

 

VIKTIG: Jeg vil gjerne at dette skjer automatisk når jeg fyller inn for hver rad.

 

Noen som har noen ideer? Har forsøkt å google litt

Videoannonse
Annonse
Skrevet

Om dette skal foregå fortløpende uten å sende skjemadata til serveren(submit form) så må du bruke et scriptspråk på klientsiden. Ikke serversiden som PHP er. Javascript for eks.

Skrevet

Ja, som sagt, om skjemadata sendes til serveren/scriptet så kan man bruke PHP.

 

Men slik eg tolker trådstarter så skal dette skje fortløpende UTEN å sende skjemadata.

VIKTIG: Jeg vil gjerne at dette skjer automatisk når jeg fyller inn for hver rad.
Skrevet

Liten edit;

 

jQuery som jeg sa vil nok fungere flott her.

Søk om du finner noe på dette.

 

Samtidig bør du lage en løsning for de uten javascript påslått.

Kanskje en button i PHP som submiter skjemaet til en kode som summerer tallene?

Skrevet

Magisk så mange forslag av varierende kvalitet som blir postet her på forumet.

 

Database (en dårlig en) har ingenting med dette å gjøre, AJAX er som nevnt overkill og hva skal svaret «jQuery» hjelpe?

 

--

 

Det du sannsynligvis ønsker er å initielt ha et form med fem felt og en knapp. Knappen kjører en funksjon som validerer feltene, kalkulerer summen, gjør at feltene ikke kan skrives til og legger til fem nye felt.

 

Her er et par hint:

-På knappen kan du legge til en event listeneronclick eventuelt kan du legge til en onclick-attributt som kjører funksjonen.

-For å konvertere feltene kan du bruke parseInt(verdi, 10).

-For å hente verdiene ut fra formet kan du f.eks bruke getElementById eller getElementsByTagName for å få en referanse til elementene.

-For å gjøre at et felt ikke kan skrives til kan du bruke element.setAttribute('readonly', 'readonly');.

-For å legge til nye felt bruker du createElement('input') og appendChild.

Skrevet

FrilanserBob har enda ikke kommet tilbake og tydeliggjort hva han trenger. Jeg antar han ikke er noen spesialist i programmering og derfor ikke uttrykker seg helt presis heller, så hva han legger i at kalkuleringen skal skje automatisk, får han svare på når han kommer tilbake. Jeg tipper ærlig talt at det ikke gjør noe om han må trykke på en knapp for at kalkuleringen skal skje. Dermed kan det løses i PHP. Database er tingen om han har tenkt å lagre radene.

  • 2 uker senere...
Skrevet (endret)
Hei igjen... Litt sen tilbakemelding fra min side... Noen som har noen gode koder å bidra med?

Har du ikke lest svarene du har fått? :nei:

Endret av MikkelRev
Skrevet
Det du sannsynligvis ønsker er å initielt ha et form med fem felt og en knapp. Knappen kjører en funksjon som validerer feltene, kalkulerer summen, gjør at feltene ikke kan skrives til og legger til fem nye felt.

Evt. kalkulere på onChange-eventen til feltene, da skjer det fortløpende.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...