Пытаюсь сделать корзину. Я создал таблицу, содержащую продукты (каждая строка содержит товар, его цену и кнопку для его выбора). С js, когда вы нажимаете кнопку элемента, он клонирует всю строку этого элемента и помещает клон во вторую таблицу (которая является корзиной для покупок). Я хотел бы удалить клонированную строку второй таблицы при нажатии на ее кнопку. Речь идет не об удалении родителя DOM, потому что родителем кнопки является td, а не весь tr, который я хотел бы удалить.
let basket = document.getElementById("products_cart")
let buttons = document.querySelectorAll('.item_button');
for (button of buttons) {
button.addEventListener('click', cloneLine);
}
function cloneLine(e) {
let td = e.target.parentNode;
let tr = td.parentNode;
let clone = tr.cloneNode(true);
basket.appendChild(clone);
clone.querySelector('.item_button').textContent = "-";
}
<h1>CHOOSE</h1>
<table id = "starters">
<tr>
<th>PRODUCT</th>
<th>PRICE</th>
<th>ADD TO CART</th>
</tr>
<tr>
<td>Cherry</td>
<td>6</td>
<td><button class = "item_button">+</button></td>
</tr>
<tr>
<td>Peach</td>
<td>8</td>
<td><button class = "item_button">+</button></td>
</tr>
<tr>
<td>Strawberry</td>
<td>12</td>
<td><button class = "item_button">+</button></td>
</tr>
</table>
<h1>YOUR CHOICE</h1>
<table id = "products_cart">
</table>
Возможный дубликат jquery удалить строку при нажатии не работает?
@Nordii Я пытался, но это не сработало. Но я не очень уверен в своих знаниях синтаксиса
let basket = document.getElementById("products_cart")
let buttons = document.querySelectorAll('.item_button');
for (button of buttons) {
button.addEventListener('click', cloneLine);
}
function cloneLine(e) {
let td = e.target.parentNode;
let tr = td.parentNode;
let clone = tr.cloneNode(true);
basket.appendChild(clone);
clone.querySelector('.item_button').textContent = "-";
clone.querySelector('.item_button').addEventListener("click", function(){
basket.removeChild(clone);
});
}
<h1>CHOOSE</h1>
<table id = "starters">
<tr>
<th>PRODUCT</th>
<th>PRICE</th>
<th>ADD TO CART</th>
</tr>
<tr>
<td>Cherry</td>
<td>6</td>
<td><button class = "item_button">+</button></td>
</tr>
<tr>
<td>Peach</td>
<td>8</td>
<td><button class = "item_button">+</button></td>
</tr>
<tr>
<td>Strawberry</td>
<td>12</td>
<td><button class = "item_button">+</button></td>
</tr>
</table>
<h1>YOUR CHOICE</h1>
<table id = "products_cart">
</table>
Вы не можете удалить родителя родителя?