JavaScript problems [closed]

0

Hi, I'm having problems with my javascript. I have two functions and when I add one more it crashes everything. The two functions are these:

 function calculaResultado(x){        
        console.log(x);
        a = document.getElementById('avInicial' + x).value;
        b = document.getElementById('meta' + x).value;
        c = document.getElementById('avFinal' + x).value;

        let resultado = ((c*100)/b);

        if(b === c){
            resultado = 100; //100%
        } else if (a > c) {
            resultado = 0; // 0%
        } 
        else {
            resultado = parseInt(resultado);
        }

        document.getElementById('resultado' + x).value =  resultado; 

        calculaMediaFinal();
    }

    function calculaMediaFinal() {
      let soma = 0;
      let contador = 0;
      for (var i = 1; i <= 12; i++) { 
        if (document.getElementById('resultado' + i).value) {
          soma += parseInt(document.getElementById('resultado' + i).value, 10);
          contador++;
        }
      }
      var media = soma / contador;
      var inputCuboMedia = document.getElementById('ConcretizaObj');
      inputCuboMedia.value = parseInt(media, 10);
    }

and the function I want to insert even more is this:

    function ContaObjetivos(){
        let contador = 0;
        for (var = 1; i <= 12; i++){
            if (document.getElementById('resultado' + i).value) {
          contador++;
        }
    }

    var inputCount = document.getElementById('ObjDefinidos');
    }

What's wrong to stop working when I add the latter?

    
asked by anonymous 04.06.2018 / 11:55

2 answers

3

In the last method, within for you are not declaring the variable i .

Change this:

for (var = 1; i <= 12; i++){

so:

for (var i = 1; i <= 12; i++){
    
04.06.2018 / 12:10
0

I put their functions together with the correction that @Arnaldo commented and worked, see proof:

function calculaResultado(x) {
    console.log(x);
    a = document.getElementById('avInicial' + x).value;
    b = document.getElementById('meta' + x).value;
    c = document.getElementById('avFinal' + x).value;

    let resultado = ((c * 100) / b);

    if (b === c) {
        resultado = 100; //100%
    } else if (a > c) {
        resultado = 0; // 0%
    } else {
        resultado = parseInt(resultado);
    }

    document.getElementById('resultado' + x).value = resultado;

    calculaMediaFinal();
}

function calculaMediaFinal() {
    let soma = 0;
    let contador = 0;
    for (var i = 1; i <= 12; i++) {
        if (document.getElementById('resultado' + i).value) {
            soma += parseInt(document.getElementById('resultado' + i).value, 10);
            contador++;
        }
    }
    var media = soma / contador;
    var inputCuboMedia = document.getElementById('ConcretizaObj');
    inputCuboMedia.value = parseInt(media, 10);
}

function ContaObjetivos() {
    let contador = 0;
    for (var i = 1; i <= 12; i++) {
        if (document.getElementById('resultado' + i).value) {
            contador++;
        }
    }

    var inputCount = document.getElementById('ObjDefinidos');
}


console.log('calculaResultado é ' + typeof calculaResultado)
console.log('calculaMediaFinal é ' + typeof calculaMediaFinal)
console.log('ContaObjetivos é ' + typeof ContaObjetivos)
console.log('blablabla é ' + typeof blablabla)
    
04.06.2018 / 13:37