webForumDet fria alternativet

Hjälp med avrundning

1 svar · 285 visningar · startad av ConnyFox

ConnyFoxMedlem sedan aug. 20011 087 inlägg
#1

Jag använder fölnade kod och vill att totsum, tot_moms och totsum_moms skall avrundas till hela och halva kronor innan den skrivs ut.

function addera()
{
	var elms = document.forms["form1"].elements;
	if ( !elms )
		return false;

	var momsfaktor = 1.25;
	var momsfaktor2 = 0.25;

	var totsum = 0.0;
	var i = 1;

	var obj = null;
	while ( elms["antal"+i] && elms["pris"+i] )
	{
		var delsum = parseFloat( elms["antal"+i].value, 10 ) * parseFloat( elms["pris"+i].value, 10 );
		if ( isNaN( delsum ) )
			delsum = 0;

		obj = document.getElementById( "delsum"+i );
		if ( obj )
			obj.innerHTML = delsum;
		obj = document.getElementById( "delsum_moms"+i );
		if ( obj )
			obj.innerHTML = delsum * momsfaktor;

		totsum += delsum;
		i++;
	}

	if ( elms["totalpris"] )
		elms["totalpris"].value = totsum;
	if ( elms["totalpris_moms"] )
		elms["totalpris_moms"].value = totsum * momsfaktor;
	if ( elms["moms"] )
		elms["moms"].value = totsum * momsfaktor2;
	obj = document.getElementById( "totsum" );
	if ( obj )
		obj.innerHTML = totsum;
	obj = document.getElementById( "totsum_moms" );
	if ( obj )
		obj.innerHTML = totsum * momsfaktor;
	obj = document.getElementById( "tot_moms" );
	if ( obj )
		obj.innerHTML = totsum * momsfaktor2;

	return true;
}

Tack på förhand

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#2

En liten funktion:

Math.roundEvenHalves = function(x)
{
	x *= 2;
	x = Math.round(x);
	x /= 2;
	return x;
}

alert(Math.RoundEvenHalves(23.25));
128 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)