From 1fe62103a85d5cc9dae6aba880112643bd35d9b7 Mon Sep 17 00:00:00 2001 From: Philippe Torrel Date: Wed, 7 Oct 2026 13:19:45 +0200 Subject: [PATCH] --- .../03_product-manager/assets/js/main.js | 25 ++++++++++++++++++- .../tag23/03_product-manager/index.html | 9 ++++++- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/03_js-dom/unterricht/tag23/03_product-manager/assets/js/main.js b/03_js-dom/unterricht/tag23/03_product-manager/assets/js/main.js index 9112cd8..a57eeb0 100644 --- a/03_js-dom/unterricht/tag23/03_product-manager/assets/js/main.js +++ b/03_js-dom/unterricht/tag23/03_product-manager/assets/js/main.js @@ -49,11 +49,34 @@ const { name, price } = product; const tdNameEl = createTd(name, 'td-name'); const tdPriceEl = createTd(price, 'td-price'); - const trEl = createTr(tdNameEl, tdPriceEl); + const tdActionsEl = createTdWithActions(); + + const trEl = createTr(tdNameEl, tdPriceEl, tdActionsEl); DOM.tbody.appendChild(trEl); }; + const createTdWithActions = () => { + const td = document.createElement('td'); + td.classList.add('td-actions'); + + const btnRemove = document.createElement('button'); + const icon = document.createElement('i'); + const span = document.createElement('span'); + + btnRemove.classList.add('btn', 'btn-danger', 'button-product-remove'); + icon.classList.add('fas', 'fa-trash-can'); + span.classList.add('visually-hidden'); + span.textContent = 'Remove Product'; + + btnRemove.appendChild(icon); + btnRemove.appendChild(span); + + td.appendChild(btnRemove); + + return td; + }; + const createTd = (text, ...classNames) => { const td = document.createElement('td'); td.classList.add(...classNames); diff --git a/03_js-dom/unterricht/tag23/03_product-manager/index.html b/03_js-dom/unterricht/tag23/03_product-manager/index.html index e5d47eb..e5a50ae 100644 --- a/03_js-dom/unterricht/tag23/03_product-manager/index.html +++ b/03_js-dom/unterricht/tag23/03_product-manager/index.html @@ -22,17 +22,24 @@ Name Price in € + Actions - +