Avatar billede stone Forsker
14. februar 2004 - 12:05 Der er 8 kommentarer og
1 løsning

beregning af vare med ekstra

der skulle vel ikke være en der ligger inde med et script til beregning af:

standard vare + valg af ekstra udstyr + model den samlede beregning bliver vist i et felt.

felter i beregningsmodulet kunne være:

varebeskrivelse:
farve:
sæder:
gps:
fælge:
motor:
osv......
Avatar billede roenving Novice
14. februar 2004 - 12:33 #1
Sådan en ?-)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>

<title>Beregn og afrund</title>

<meta name="Generator" content="Stone's WebWriter 4">
<meta name="keywords" content="roenving,http://www.eksperten.dk/spm/446911">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript" type="text/javascript">
function makeNumber(tal){
  tal = ""+tal;
  if(!tal.match(/^[\d\.\,]+$/))return 0;
  if (tal.indexOf(",")>-1){
    komma = tal.indexOf(",");
    return parseFloat(tal.substring(0,komma)+"."+tal.substring(komma+1));
  }else return parseFloat(tal)
}
function afrund(tal){
  if(isNaN(tal))return "0,00";
  tal = ""+(Math.round(tal*100))/100;
  punktum = tal.indexOf(".");
  if (punktum==-1)return tal+".00";
  if (tal.length-punktum==3)return tal;
  else return tal+"0";
}
function udregn(n){
var p=document.minForm.elements['pris'+n];
var a=document.minForm.elements['antal'+n];
var i=document.minForm.elements['ialt'+n];
i.value=afrund(makeNumber(p.value)*makeNumber(a.value));
}
</script>
</head>
<body>
<form name='minForm'>
Pris 1: <input type='text' name='pris1'>&nbsp;Anta1: <input type='text' name='antal1' onblur="udregn(1)">&nbsp;Ialt: <input disabled type='text' name='ialt1' style="background:#faa"><br>
Pris 2: <input type='text' name='pris2'>&nbsp;Anta1: <input type='text' name='antal2' onblur="udregn(2)">&nbsp;Ialt: <input disabled type='text' name='ialt2' style="background:#faa"><br><br><br>
Resultat:
<input disabled type='text' name='samlet' style="background:#faa">
<br>
<input type='button' value='Udregn' onclick='udregn(1);udregn(2);this.form.samlet.value=afrund(parseFloat(this.form.ialt1.value)+parseFloat(this.form.ialt2.value));'>
</form>
</body>
</html>
Avatar billede stone Forsker
14. februar 2004 - 12:53 #2
det kan man da ikke beregne priser på
varebeskrivelse://dropdown valg af vare
farve://dropdown
der://dropdown
gps: //dropdown
lge://dropdown
motor://dropdown
osv......
Avatar billede stone Forsker
14. februar 2004 - 12:55 #3
udfra valget i de forskellige dropdown bliver prisen beregnet
Avatar billede roenving Novice
14. februar 2004 - 13:08 #4
Se det meldte historien jo ikke noget om, og da den, jeg havde ikke var udformet sådan, fik jeg ikke tanken, men ellers er det ikke så meget anderledes ...

-- kigger lige på det ...
Avatar billede roenving Novice
14. februar 2004 - 13:40 #5
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>

<title>Beregn og afrund</title>

<meta name="Generator" content="Stone's WebWriter 4">
<meta name="keywords" content="roenving,http://www.eksperten.dk/spm/446911">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript" type="text/javascript">
function makeNumber(tal){
  tal = ""+tal;
  if(!tal.match(/^[\d\.\,]+$/))return 0;
  if (tal.indexOf(",")>-1){
    komma = tal.indexOf(",");
    return parseFloat(tal.substring(0,komma)+"."+tal.substring(komma+1));
  }else return parseFloat(tal)
}
function afrund(tal){
  if(isNaN(tal))return "0,00";
  tal = ""+(Math.round(tal*100))/100;
  punktum = tal.indexOf(".");
  if (punktum==-1)return tal+".00";
  if (tal.length-punktum==3)return tal;
  else return tal+"0";
}
function beregnPris(f){
var p = a = t = null, sum = tal = 0;
for(i=0;3>i;i++){
  p = f.elements['pris'+i];
  p.value = f.elements['vare'+i].value.split('#')[1];
  a = f.elements['antal'+i];
  t = f.elements['ialt'+i];
  tal = makeNumber(p.value)*makeNumber(a.value);
  sum += tal;
  t.value = afrund(tal);
  }
  f.samlet.value = afrund(sum);
}
</script>
</head>
<body>
<form name='minForm'>
<table><tr style="font-family:verdana,sans-serif;">
<th style="width:150px;">Vare</th>
<th style="width:150px;">Pris pr. stk. (kr)</th>
<th style="width:150px;">Antal</th>
<th style="width:150px;">Pris ialt (kr)</th>
</tr><tr><td style="width:150px;">
  <select name="vare0" onchange="beregnPris(this.form);">
    <option value="#0">-- Vælg model --</option>
    <option value="1,3#130000">Standard 1,3l</option>
    <option value="1,6#160000">Standard 1,6l</option>
    <option value="1,8#180000">TDI 1,8l</option>
  </select></td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='pris0'></td>
<td style="width:150px;text-align:center;"><input disabled type='text' value="1" name='antal0' onblur="beregnPris(this.form);" style="display:none;">1</td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='ialt0' style="background:#faa"></td>
</tr><tr><td style="width:150px;">
  <select name="vare1" onchange="beregnPris(this.form);">
    <option value="#0">-- Vælg farve --</option>
    <option value="stRød#0">Standard rød</option>
    <option value="stGul#0">Standard gul</option>
    <option value="metBlue#6000">Metallic blue</option>
  </select></td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='pris1'></td>
<td style="width:150px;text-align:center;"><input disabled type='text' value="1" name='antal1' onblur="beregnPris(this.form);" style="display:none;">1</td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='ialt1' style="background:#faa"></td>
</tr><tr><td style="width:150px;">
  <select name="vare2" onchange="beregnPris(this.form);">
    <option value="#0">-- Vælg sæder --</option>
    <option value="St#0">Standard</option>
    <option value="60/40#4000">Standard + 60/40 bagi</option>
    <option value="læder#15000">Læder</option>
  </select></td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='pris2'></td>
<td style="width:150px;text-align:center;"><input disabled type='text' value="1" name='antal2' onblur="beregnPris(this.form);" style="display:none;">1</td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='ialt2' style="background:#faa"></td>
</tr><tr><td style="width:150px;">
  <select name="betaling">
    <option value="">-- Vælg betaling --</option>
    <option value="Kontant">Kontant</option>
    <option value="Kreditkort">Kreditkort</option>
    <option value="Bankgaranti">Bankgaranti</option>
  </select></td>
<td style="width:150px;text-align:right;"></td>
<td style="width:150px;"></td>
<td style="width:150px;text-align:right;"><input disabled type='text' name='samlet' style="background:#faa"></td>
</tr></table>
</form>
</body>
</html>

-- så skulle grundlaget være der, der er utallige muligheder for at gøre ting anderledes !-)
Avatar billede stone Forsker
14. februar 2004 - 14:30 #6
he he undksyld jeg ikke har defineret sp. ordentligt...men de forskelige punkter indikere jo en dropdown.
Avatar billede stone Forsker
14. februar 2004 - 14:32 #7
ok.. roenving smid et svar....det her kan jeg arb videre på takker

//stone
Avatar billede roenving Novice
14. februar 2004 - 14:36 #8
Velbekomme '-)
Avatar billede roenving Novice
14. februar 2004 - 17:33 #9
-- og tak for points ;~}
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