Почему я получаю эту ошибку Uncaught Typeerror?
У меня есть js код для обновления корзины, он работает, когда корзина находится на той же странице, что и кнопка добавления в корзину, но когда корзина находится на другой странице, я получил Uncaught Typeerror: cannot read property 'innerHTML' of null error.
var pcart = document.querySelector('#pcart');
var ptotal = document.querySelector('#ptotal');
function addPizza(pid){
pcart.innerHTML += 'new pizza';
}
<div class="col-md-4">
<h2>Order List</h2>
<ul id="pcart"></ul>
<h4 id="ptotal">Total: 0 $</h4>
</div>
Вероятно, это происходит потому, что вы пытаетесь вызвать функцию addPizza
в то время, когда список #pcart
не отображается.
Он не может получить доступ к своему innerHTML
, поскольку для браузера он больше не существует.
Можно попробовать сохранить данные корзины в массив, к которому можно обращаться на каждой странице (например, с помощью localStorage
). И когда элемент #pcart
будет отображен, отобразить массив в его innerHTML
.