Функция перестает работать после стрельбы один раз - PullRequest
0 голосов
/ 01 мая 2020

Итак, у меня есть эта функция, которая добавляет данные в локальное хранилище, а затем другие, которые получают их на другой странице, а затем создают таблицу с новыми элементами, используя JSON и localstorage, но как только эта функция запущена, она не работает больше, и я не знаю, в чем здесь проблема, потому что однажды она работает нормально, но потом перестает работать.

HTML:

       <div id="2" class="product_disc">
<b><p class="product_name" style="font-size: 30px;color: #002366;font-weight: 400">T-Shirt ET</p></b>
<p class="price"
   style="font-size:2.625 rem;line-height: 1.125 rem color: #002366;font-weight: 400;color:grey;letter-spacing: .1125rem;">
    14,99€</p>
<HR size=0.5 style="color: aqua;width: 200px;"></HR>
<button id="xs" onclick="SizeButtonStyle(this)" class="unclicked_size_button"><b>XS</b></button>
<button id="s" onclick="SizeButtonStyle(this)" class="unclicked_size_button"><b>S</b></button>
<button id="m" onclick="SizeButtonStyle(this)" class="unclicked_size_button"><b>M</b></button>
<button id="l" onclick="SizeButtonStyle(this)" class="unclicked_size_button"><b>L</b></button>
<button id="xl" onclick="SizeButtonStyle(this)" class="unclicked_size_button"><b>XL</b></button>
<p>
    <button class="adicionar_carrinho" value="Save">Adicionar ao carrinho</button>
</p>
<br>
<br>
<nobr style="color:#002366;letter-spacing: .1125rem;font-weight: 500 ">Artista:</nobr>
<nobr class="artist_name" onclick="artist_page();">Mariana Gomes</nobr>

JS:

     var updateTable = function () {

var productos = Object.entries(localStorage)


for (let i = 0; i < localStorage.length; i++) {


   var id = JSON.parse(productos[i][1]).currentID
   var size = JSON.parse(productos[i][1]).currentSize


    console.log(id,size)





    $.ajax({
        url: 'db.json',
        dataType: 'json',
        async : false,
        success: function(data){
            nome = data[JSON.parse(productos[i][1]).currentID].Nome
            preco = data[JSON.parse(productos[i][1]).currentID].Preco            }
    });

    console.log(nome)

    var table = document.getElementById('table')
    table.innerHTML = table.innerHTML + '<div class="rTableRow">\n' +
        '        <div class="rTableCell">'+nome+'</div>\n' +
        '        <div class="rTableCell">\n' +
        '            <p class="size">'+size+'</p></div>\n' +
        '        <div class="rTableCell">\n' +
        '            <p class="cart-price">'+preco+'</p></div>\n' +
        '        <div class="rTableCell"><input style="width:50px;height: 20px;" type="number" class="quantity" name="quantity"\n' +
        '                                       min="1" value="1">\n' +
        '            <button class="btn-danger">Remover</button>\n' +
        '        </div>\n' +
        '    </div>'

    updateCartTotal()
}


  }

            updateTable()
      function addToCartClicked(event) {

console.log("i was here")

var button = event.target
currentID = button.parentElement.parentElement.id;


var producto = {currentID, currentSize}


if (localStorage.length == 0) {
    localStorage.setItem(0, JSON.stringify(producto));
} else {
    localStorage.setItem(localStorage.length, JSON.stringify(producto))
}

updateTable()

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...