Как решить Cannot set properties of null (setting 'innerHTML')?

Рейтинг: 0Ответов: 1Опубликовано: 02.08.2023

HTML:

<div class="cart__num" id="cart_num">0</div>

JS:

var cart__num = document.querySelector(".cart__num");


function addToCart() {
    alert("Добавлено в корзину");

    cart__num.innerHTML = 3;
}

Не пойму, что не так

Ответы

▲ 1

Как верно указал Grundy, код у вас абсолютно верный и работает, а проблема возникает из-за того, что в js вы пытаетесь получить элемент с классом .cart__num в тот момент, когда он ещё не был объявлен в разметке html (возможно, что этот компонент вы создаёте и добавляете в разметку html либо позже, либо не на той странице, где идёт вызов js).

var cart__num = document.querySelector(".cart__num");

function addToCart() {
    alert("Добавлено в корзину");

    cart__num.innerHTML = 3;
}
<div class="cart__num" id="cart_num">0</div>
<button type="submit" id="AddToCart">Добавить в корзину</button>