-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcjavascript.js
64 lines (52 loc) · 2.06 KB
/
cjavascript.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
const form = document.getElementById('order-form');
const tableBody = document.querySelector('#order-table tbody');
// Handle form submission
form.addEventListener('submit', (e) => {
e.preventDefault(); // Prevent page reload
const name = document.getElementById('customer-name').value;
const coffeeType = document.getElementById('coffee-type').value;
const coffeeSize = document.getElementById('coffee-size').value;
const order = { name, coffeeType, coffeeSize };
// Save order to localStorage
let orders = JSON.parse(localStorage.getItem('orders')) || [];
orders.push(order);
localStorage.setItem('orders', JSON.stringify(orders));
// Add new order to the table
addOrderToTable(order, orders.length - 1);
// Reset form
form.reset();
});
// Function to add an order row to the table
function addOrderToTable(order, index) {
const row = document.createElement('tr');
row.innerHTML = `
<td>${order.name}</td>
<td>${order.coffeeType}</td>
<td>${order.coffeeSize}</td>
<td><button class="remove-btn" data-index="${index}">Remove</button></td>
`;
tableBody.appendChild(row);
}
// Load orders from localStorage when the page loads
window.onload = function () {
const orders = JSON.parse(localStorage.getItem('orders')) || [];
orders.forEach((order, index) => addOrderToTable(order, index));
};
// Handle the remove button click
tableBody.addEventListener('click', (e) => {
if (e.target.classList.contains('remove-btn')) {
const index = e.target.dataset.index;
// Remove from localStorage
let orders = JSON.parse(localStorage.getItem('orders')) || [];
orders.splice(index, 1);
localStorage.setItem('orders', JSON.stringify(orders));
// Reload the table to reflect changes
refreshTable();
}
});
// Refresh table to update indices after removal
function refreshTable() {
tableBody.innerHTML = ''; // Clear existing rows
const orders = JSON.parse(localStorage.getItem('orders')) || [];
orders.forEach((order, index) => addOrderToTable(order, index));
}