Winst/verlies realtime uitrekenen
Ik heb een vraagje. Ik wil graag een script maken dat realtime de winst/verlies die er word gemaakt uitrekent.
Er zijn 4 input velden. 3 voor de prijzen (1e prijs, 2e prijs en 3e prijs) en een veld met het inschrijfgeld. De organisator van de wedstrijd moet die prijzen bepalen. Het is dan de bedoeling dat hij/zij onderaan de pagina ziet hoeveel winst/verlies hij/zij maakt en dat realtime.
Ik weet niet of dit met javascript of jQuery moet en heb al een aardig poosje op internet zitten kijken. Alle scripts die ik tot nu toe gevonden heb voldoen niet helemaal. Bij velen zie ik namelijk dat je op een knop moet drukken om het uit te rekenen en dat wil ik niet.
Hopelijk kan iemand mij hier mee helpen of me op weg helpen.
Groeten,
Victor
Gewijzigd op 13/07/2012 22:46:22 door Victor Php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<script>
cntCompetitors = 50;
function calcProfit() {
document.getElementById("profit").innerHTML =
cntCompetitors * document.getElementById("fee").value -
document.getElementById("fstPrice").value -
document.getElementById("sndPrice").value -
document.getElementById("trdPrice").value;
}
</script>
<input type="text" name="fstPrice" id="fstPrice" onChange="calcProfit()" />
// dit voor alle andere inputs
</script>
cntCompetitors = 50;
function calcProfit() {
document.getElementById("profit").innerHTML =
cntCompetitors * document.getElementById("fee").value -
document.getElementById("fstPrice").value -
document.getElementById("sndPrice").value -
document.getElementById("trdPrice").value;
}
</script>
<input type="text" name="fstPrice" id="fstPrice" onChange="calcProfit()" />
// dit voor alle andere inputs
</script>
-Edit-
Het wil niet werken. Ik snap er niet veel van, maar heb met behulp van internet wel bekeken wat wat is. Profit dacht ik dat een input was waarin je de winst/verlies kan zien. Alleen gebeurt er niks. Doe ik nu iets fout?
Is het ook mogelijk om cntCompetitors te automatiseren? Ik heb een select dropdown met 6, 12 en 22 deelnemers. Om de wedstrijd te kunnen starten moeten er minimaal de helft zijn.
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
cntCompetitors = 50;
function calcProfit() {
document.getElementById("profit").innerHTML =
cntCompetitors * document.getElementById("inleg").value -
document.getElementById("prijs1").value -
document.getElementById("prijs2").value -
document.getElementById("prijs3").value;
}
function calcProfit() {
document.getElementById("profit").innerHTML =
cntCompetitors * document.getElementById("inleg").value -
document.getElementById("prijs1").value -
document.getElementById("prijs2").value -
document.getElementById("prijs3").value;
}
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Prijs (1e plaats):<br />
<input type="text" id="prijs1" onChange="calcProfit()" name="prijs1" /><br /><br />
Prijs (2e plaats):<br />
<input type="text" id="prijs2" onChange="calcProfit()" name="prijs2" /><br /><br />
Prijs (3e plaats):<br />
<input type="text" id="prijs3" onChange="calcProfit()" name="prijs3" /><br /><br />
<strong>Inschrijfgeld:</strong><br />
<input type="text" id="inleg" onChange="calcProfit()" name="inleg" /><br /><br />
<input type="submit" name="wedstrijdstarten" value="Organiseer!" />
<input type="text" name="profit" id="profit" />
<input type="text" id="prijs1" onChange="calcProfit()" name="prijs1" /><br /><br />
Prijs (2e plaats):<br />
<input type="text" id="prijs2" onChange="calcProfit()" name="prijs2" /><br /><br />
Prijs (3e plaats):<br />
<input type="text" id="prijs3" onChange="calcProfit()" name="prijs3" /><br /><br />
<strong>Inschrijfgeld:</strong><br />
<input type="text" id="inleg" onChange="calcProfit()" name="inleg" /><br /><br />
<input type="submit" name="wedstrijdstarten" value="Organiseer!" />
<input type="text" name="profit" id="profit" />
Gewijzigd op 14/07/2012 11:23:43 door Victor Php
Zoals je van een input de waarde (value) kunt opvragen, kan je dat dus ook met een select.
Ger van Steenderen op 14/07/2012 11:35:02:
Ik ben er vanuit gegaan dat profit een span was. Een input heeft geen innerHTML.
Zoals je van een input de waarde (value) kunt opvragen, kan je dat dus ook met een select.
Zoals je van een input de waarde (value) kunt opvragen, kan je dat dus ook met een select.
Okee, ik heb het geprobeerd, maar er komt geen output.
Hoe moet ik de span neerzetten. Gewoon zo toch?
-Edit-
Het is gelukt met de volgende code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Prijs (1e plaats):<br />
<input type=\"text\" id=\"prijs1\" onChange=\"calculate()\" name=\"prijs1\" /><br /><br />
Prijs (2e plaats):<br />
<input type=\"text\" id=\"prijs2\" onChange=\"calculate()\" name=\"prijs2\" /><br /><br />
Prijs (3e plaats):<br />
<input type=\"text\" id=\"prijs3\" onChange=\"calculate()\" name=\"prijs3\" /><br /><br />
<strong>Inschrijfgeld:</strong><br />
<input type=\"text\" id=\"inleg\" onChange=\"calculate()\" name=\"inleg\" /><br /><br />
<input type=\"submit\" name=\"wedstrijdstarten\" value=\"Organiseer!\" />
<input type=\"total\" id=\"total\" name=\"total\" />
<input type=\"text\" id=\"prijs1\" onChange=\"calculate()\" name=\"prijs1\" /><br /><br />
Prijs (2e plaats):<br />
<input type=\"text\" id=\"prijs2\" onChange=\"calculate()\" name=\"prijs2\" /><br /><br />
Prijs (3e plaats):<br />
<input type=\"text\" id=\"prijs3\" onChange=\"calculate()\" name=\"prijs3\" /><br /><br />
<strong>Inschrijfgeld:</strong><br />
<input type=\"text\" id=\"inleg\" onChange=\"calculate()\" name=\"inleg\" /><br /><br />
<input type=\"submit\" name=\"wedstrijdstarten\" value=\"Organiseer!\" />
<input type=\"total\" id=\"total\" name=\"total\" />
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<script>
function calculate(){
var total = document.getElementById('maxaantal').value * document.getElementById('inleg').value - document.getElementById('prijs1').value - document.getElementById('prijs2').value - document.getElementById('prijs3').value;
document.getElementById('total').value = total;
}
</script>
function calculate(){
var total = document.getElementById('maxaantal').value * document.getElementById('inleg').value - document.getElementById('prijs1').value - document.getElementById('prijs2').value - document.getElementById('prijs3').value;
document.getElementById('total').value = total;
}
</script>
Gewijzigd op 14/07/2012 11:51:58 door Victor Php