Avatar billede sonic666 Novice
15. november 2003 - 18:16 Der er 4 kommentarer og
1 løsning

Tilføj bregn sum udfra pris x antal i min formular med javascript

Jeg har en formular hvor manb vælger hvilken vare man skal have i en liste. derefter bliver varenr. og pris automatisk udfyldt, med den data der passer til den valgte vare. Til sidst bliver priserne for de valgte varer summeret i et total-felt nederst på siden.

Koden til siden er vist neden for!

Det jeg mangler er, at man skal kunne indtaste et antal af den valgte vare. Det ville være godt hvis prisen ud for varen blev ganget med med antallet hvis det kan lade sig gøre, men det er ikke nødvendigt. Men total-feltet nederst på siden skal selvfølgelig beregne den totale pris. Altså skal hver varepris ganges med antalet før de læges sammen.

Håber nogle kan hjælpe
Avatar billede sonic666 Novice
15. november 2003 - 18:19 #1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Automatisk udfyld tekstfelter i formular</title>
<script language="JavaScript" type="text/javascript">
function kommaTal(tal1,tal2){
    tal1=parseFloat(tal1.replace(/\,/gi,"."));
    tal2=parseFloat(tal2.replace(/\,/gi,"."));
    tal1=(isNaN(tal1))?0:tal1;
    tal2=(isNaN(tal2))?0:tal2;
    tal=String(tal1+tal2);
    tal=((tal.indexOf(".")==-1)?tal+",00":tal);
    tal=((tal.indexOf(".")==tal.length-2)?tal+"0":tal);
    tal=tal.replace(/\./gi,",");
    return (tal);
    }
function writeNumbers(sel,frm,nm){
    frm.elements['hvad'+nm].value=sel.text;   
    sel=sel.value.split("/");
    frm.elements['pris'+nm].value=sel[0];   
    frm.elements['nr'+nm].value=sel[1];
    var sum = "0,00";
    for(i=0;frm.elements.length>i;i++){
        if(frm.elements[i].name.indexOf('pris')==0)sum = kommaTal(sum,frm.elements[i].value);
    }
    frm.sum.value=sum;
    return;
    }
</script>
</head>
<body>
<form name="form1" method="post" action="">
  Liste<select name="liste1" onChange="writeNumbers(this.options[this.selectedIndex],this.form,this.name.substring(5));">
    <option value="/" selected></option>
    <option value="50,25/b-264">rensev&aelig;ske</option>
    <option value="218/w33-9">anden v&aelig;ske</option>
  </select>
  <br>
  Vare<input type="text" name="hvad1">
  <br>
  Pris:<input type="text" name="pris1">
  <br>
  Varenr.<input type="text" name="nr1">
  <br>
  Liste
  <select name="liste2" onChange="writeNumbers(this.options[this.selectedIndex],this.form,this.name.substring(5));">
    <option value="/" selected></option>
    <option value="50,25/b-264">rensev&aelig;ske</option>
    <option value="218/w33-9">anden v&aelig;ske</option>
  </select>
  <br>
  Vare<input type="text" name="hvad2">
  <br>
  Pris:<input type="text" name="pris2">
  <br>
  Varenr.<input type="text" name="nr2">
  <br>
  Liste<select name="liste3" onChange="writeNumbers(this.options[this.selectedIndex],this.form,this.name.substring(5));">
    <option value="/" selected></option>
    <option value="50,25/b-264">rensev&aelig;ske</option>
    <option value="218/w33-9">anden v&aelig;ske</option>
  </select>
  <br>
  Vare<input type="text" name="hvad3">
  <br>
  Pris:<input type="text" name="pris3">
  <br>
  Varenr.<input type="text" name="nr3">
  <br>
  Liste
  <select name="liste4" onChange="writeNumbers(this.options[this.selectedIndex],this.form,this.name.substring(5));">
    <option value="/" selected></option>
    <option value="50,25/b-264">rensev&aelig;ske</option>
    <option value="218/w33-9">anden v&aelig;ske</option>
  </select>
  <br>
  Vare<input type="text" name="hvad4">
  <br>
  Pris:<input type="text" name="pris4">
  <br>
  Varenr.<input type="text" name="nr4">
  <br>
  <br>
  Sum:<input type="text" name="sum">
</form>
</body>
</html>
Avatar billede roenving Novice
18. november 2003 - 15:17 #2
-- den kan du vist godt lukke nu, ik?-)
Avatar billede sonic666 Novice
11. juli 2005 - 12:06 #3
skriv lige noget ;-)
Avatar billede roenving Novice
11. juli 2005 - 14:25 #4
Svar selv og acceptér svaret !-)
Avatar billede sonic666 Novice
08. juni 2011 - 09:04 #5
Tak for hjælpen ;-)
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