В настоящее время я работаю над проектом, чтобы построить тележку в местном хранилище.Все работает, кроме удаления элементов в локальном хранилище на основе заданных значений.
Я создаю динамическую таблицу, используя массив в локальном хранилище.Код таблицы:
<table id="response">
<tbody>
<tr><td>prova</td><td>40</td><td><button class="myID"
onclick="deleteRow(this)">X</button></td></tr>
<tr><td>test</td><td>30</td><td><button class="myID"
onclick="deleteRow(this)">X</button></td></tr>
</tbody>
</table>
Однако, когда я пытаюсь удалить элемент, нажимая кнопку и используя первый тд в той же строке в качестве значения, следующий код не работает должным образом:
function deleteRow(r) {
var arr = JSON.parse(localStorage.getItem('item'));
var value = jQuery(r).find("td:first").text;
for (var k in arr) {
var name = arr[k].name ;
if (name === value) {
arr.splice(k, 1);
localStorage.setItem("item", JSON.stringify(arr));
}
else {
alert('falso');
}
}
var i = r.parentNode.parentNode.rowIndex;
document.getElementById("response").deleteRow(i);
}
Проблема должна заключаться в значении переменной var, поскольку, если я назначу ему заданное значение (например, «test»), функция удалит соответствующий элемент в массиве localstorage.
Спасибо за вашепомощь!