dodawanie wzoru js do pobranych danych z bazy

0

Witam
Pobieram z bazy danych pewną zmienną ilość rekordów i tworze z nich takie bloki danych w divach do wyświetlenia na stronie. I teraz chciałbym do każdego wiersza danych dodać obliczenia w javascript. Np pobieram dane typu produkt, cena, nazwa produktu i za pomocą js dodaje kwotę VAT i sumę brutto.
I teraz zrobiłem taki kod demonstracyjny i za choinkę nie chce działać poprawnie. Co tutaj jest w tym nie tak i czy może to zrobic w ten sposób czy lepiej jakoś inaczej?

<!DOCTYPE html>
<html>
<head>
  
</head>
   <body onload="qqq()">     
                   
                <div class="Body1">100</div>
                <div class="Body8"></div>
                <div class="Body6" onchange="qqq()">2</div>
                <div class="LField2">1</div>             
             
</br>
                <div class="Body1">100</div>
                <div class="Body8"></div>
                <div class="Body6" onchange="qqq()">3</div>
                <div class="LField2">2</div> 



<script>
function qqq() {
    var ks = 50.00;
    var mD=30;
    var OR1=0.20;
    var OR2=0.10;
    var Pf=0.90;
   
    var KdS = document.querySelectorAll(".Body1");
    var KPTS = document.querySelectorAll(".Body8");
    var DnP = document.querySelectorAll(".Body6");
    var LR = document.querySelectorAll(".LField2");
        
    var i;
   for (i = 0; i < KdS.length; i++) {
        if (LR[i].innerHTML ===1);
        KPTS[i].innerHTML = Math.ceil(Math.ceil(ks+(OR1*parseInt(KdS[i].innerHTML)/mD*DnP[i].innerHTML))*Pf);

      else if (LR[i].innerHTML ===2);
        KPTS[i].innerHTML = Math.ceil(Math.ceil(ks+(OR2*parseInt(KdS[i].innerHTML)/mD*DnP[i].innerHTML))*Pf);

         }
       }

</script>
    </body> 
0

Nie wiem po co jest onLoad onChange powinno starczyć. Zobacz jai jest blad w przegladarce

0

nic nie pokazuje konsola. Na tym kodzie gdzie są średniki po if wywala błąd "Uncaught ReferenceError: qqq is not defined"
a bez średników nic nie pokazuje jak i nie wyświetla wyników.

Jakieś pomysły?

0

a spróbuj przenieść sekcje script do head'a

0

nic to nie dało. Może inną metodą to się robi?

1

dziaua https://jsfiddle.net/u35vqta8/

LR[i].innerHTML jest stringiem czyli porufnanie === powinno być LR[i].innerHTML === '1'
nadmiarowe średniki po ifach if (LR[i].innerHTML ===1);

0

Ha dzięki. Nie wpadł bym na to że to string....a kombinowałem na wszystkie sposoby stąd te średniki niezgodnie z prawem

1 użytkowników online, w tym zalogowanych: 0, gości: 1