onchange totaal

Status
Niet open voor verdere reacties.

gast0187

Gebruiker
Lid geworden
4 nov 2012
Berichten
266
ik heb dus een aantal tekstvakken waar hij automatisch als ik aantal ingeef het totaal berekent voor dat bepaald artikel nu bij opstart als ik het volledige totaal bereken van alle artikels samen krijg ik 4 x 0 (0000) (de 4 nullen die ik had ingesteld die moesten bij opstart van totaal per artikel maar bij volledig totaal moet de som komen dus 0+0+0+0 = 0 niet 0000)

nu mijn probleem hij telt die waarden niet op hij plakt ze gewoon allemaal naast elkaar en zet zo in dat tekstvak.

Ik wil dat hij deze optelt NIET aan elkaar plakt en weergeeft.

Code:
        function update() {
        totbedrag.obj.value = "0";
                
        art1totbedrag.obj.value = art1aantal.obj.value * bedragart1;
        art2totbedrag.obj.value = art2aantal.obj.value * bedragart2;
        art3totbedrag.obj.value = art3aantal.obj.value * bedragart3;
        art4totbedrag.obj.value = art4aantal.obj.value * bedragart4;
                
        totbedrag.obj.value = art1totbedrag.obj.value + art2totbedrag.obj.value + art3totbedrag.obj.value + art4totbedrag.obj.value;
        }

Alvast op voorhand bedankt!!!

Mvg gast0187
 
Laatst bewerkt:
Ik heb het zelf opgelost:

dit vervangen: totbedrag.obj.value = art1totbedrag.obj.value + art2totbedrag.obj.value + art3totbedrag.obj.value + art4totbedrag.obj.value;

Naar:

Code:
totbedrag.obj.value = parseInt(art1totbedrag.obj.value) + parseInt(art2totbedrag.obj.value) + parseInt(art3totbedrag.obj.value) + parseInt(art4totbedrag.obj.value);
 
fijn dat je het zelf hebt opgelost :p

Code:
function update() {
        totbedrag.obj.value = "0";
        var artTotBedrag = Array(art1totbedrag.obj.value,art2totbedrag.obj.value,art3totbedrag.obj.value,art4totbedrag.obj.value);
        var artAant = Array(art1aantal.obj.value,art2aantal.obj.value,art3aantal.obj.value,art4aantal.obj.value);
        var bedragArt = Array(bedragart1,bedragart2,bedragart3,bedragart4);
        for(var i = 0; var i <4;i++)
        {
                artTotBedrag[i] = artAant[i]  * bedragArt[i] ;
                totbedrag.obj.value += parseInt(artTotBedrag[i]);
        }                
}
ik zelf zou hem zo schrijven....
 
Bedankt voor de suggestie.

een for-lus is idd ook mooi om dubbele code te vermijden.
Maar in dit geval is de code nu niet merkbaar langer of korter dus beide oplossingen zijn goed.
Wel lijkt het met een for-lus mischien iets professioneler :p

Mvg gast0187
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan