Graag zou ik een script maken waarbij in een standaard bestelformulier (omschrijving, prijs per stuk, aantal, subtotaal) de prijs van subtotaal (dus per regel) de prijs automatisch wordt geüpdate en waarbij direct de totaalprijs ook wordt berekend.

Ik heb nu al dat het script automatisch per regel uitrekent wat het totaal is (door middel van Ajax), maar nu wil ik ook het totaalbedrag automatisch berekend hebben.

Ik kan me niet anders voorstellen dat zo'n script al bestaat, maar ik kan het niet vinden. Kan iemand me helpen?
Kan je de code laten zien wat je tot nu toe hebt want misschien heb je hier geen Ajax voor nodig maar kan dit ook met gewoon JavaScript. Berekeningen hoeven niet perse met PHP gedaan te worden zolang de bedragen maar wel gecontroleerd worden door PHP.
Voor de AJAX-request gebruik ik de tutorial van W3Schools.com

Dit is -versimpeld- wat ik nu heb:

<script type="text/javascript">
function ajaxFunction(product, aantal)
{
	//knip
	
	xmlhttp.onreadystatechange=function()
	{
		if(xmlhttp.readyState==4)
		{
			document.getElementById("prijs_" + product).innerHTML = xmlhttp.responseText;

		}
	}
	xmlhttp.open("GET","bestellen/prijs.php?id=" + product + "&aantal=" +aantal,true);
	xmlhttp.send(null);
}
</script>

<form name="myForm">
Aantal: <input type="text" name="product[1]" onkeyup="ajaxFunction(1, this.value);" />
Subtotaal: <input type="text" name="prijs1" id="prijs_1" />

Aantal: <input type="text" name="product[2]" onkeyup="ajaxFunction(2, this.value);" />
Subtotaal: <input type="text" name="prijs2" id="prijs_2" />
</form>


Er komt nog een uitgebreider systeem in: bestellingen vanaf €15,- hebben geen verzendkosten bijvoorbeeld.
Voor de goede orde: ik ga er vanuit dat er ergens al zo'n script is, maar ik kan het niet vinden.

Als er iemand mij al een klein beetje op weg kan helpen (bijvoorbeeld een site waar de techniek op wordt gebruikt), ben ik blij!
Ik heb hem bijna! Ik zal mijn oplossing posten zodra hij helemaal af is.

Ik doe in mijn ajax-request:

<?php
number_format($obj->prijs * $_GET['aantal'], 2, ',', '.');
?>

Weet iemand de javascript-equivalent hier misschien van?

edit: gevonden!
Stephan,

Je geeft aan om de oplossing te posten. ik ben op zoek naar eigenlijk exact hetzelfde form wat jij hebt op w2trading. Dus middels een dropdown een aantal selecteren en die gelijk doorberekenen.

Dank alvast.
Jeffrey

Reageren