2017-02-14 4 views
-1

Я пытаюсь создать функцию, которая изменяет значения в innerHTML элементов, которые имеют одно имя класса, но разные значения числа.Для правильной работы цикла

как в:

<div class="ingredient-assignment__quantity">5</div> 
<div class="ingredient-assignment__quantity">300</div> 
<div class="ingredient-assignment__quantity">250</div> 

И я хочу, расчет (то же самое для всех), чтобы пройти через все из них, а затем изменить innerHTML каждого к результату каждого.

как в:

calcuation = 5 * innerHTML; 
<div class="ingredient-assignment__quantity">25</div> 
<div class="ingredient-assignment__quantity">1500</div> 
<div class="ingredient-assignment__quantity">1250</div> 

Моя функция JS выглядит следующим образом:

function ingredientChange(){ 


var portionsBefore = document.getElementById('portions'); 
    var ingredients = document.getElementsByClassName('ingredient-assignment__quantity'); 

    function getPortions(event) { 
    const getID = event.target.id; 
    if (getID == "minus") { 
     var y = Number(portionsBefore.innerHTML) - 1; 
    } 
    else { 
     var y = Number(portionsBefore.innerHTML) + 1; 
    } 

    changeIngredients(y); 
    portionsBefore.innerHTML = y; 
    } 

    function changeIngredients(y) {  
    var arr = Object.keys(ingredients).map((k) => ingredients[k]) 
    for(var i = 0; i < arr.lenght; i++){ 
     var changeValues = Number(arr[i].innerHTML)/Number(portionsBefore.innerHTML); 
     var changedValues = Number(changeValues) * y; 
    } 
    } 

    function addEventListeners() { 
    document.getElementById('minus').addEventListener('click', getPortions, false); 
    document.getElementById('plus').addEventListener('click', getPortions, false); 
    } 
    addEventListeners(); 
} 

ingredientChange(); 

И все для цикла for кроме отлично работает.

Я не могу найти, что случилось с for цикла

ответ

1

У вас есть опечатка в вашем for петле

arr.lenght должен быть arr.length.

+0

Я чувствую себя глупо, спасибо! – Jousi

+0

Пожалуйста, узнайте, как использовать консоль браузера, чтобы увидеть ошибки –

+0

Я использую его, никаких ошибок не вышло – Jousi