// JavaScript code (lcp-svg-repeater.js) to handle adding/removing rows dynamically document.addEventListener('DOMContentLoaded', function () { // Add row document.getElementById('add-svg-row').addEventListener('click', function () { const container = document.getElementById('svg-repeater-container'); const newRow = document.createElement('div'); newRow.classList.add('repeater-row'); newRow.innerHTML = ` `; container.appendChild(newRow); }); // Remove row document.getElementById('svg-repeater-container').addEventListener('click', function (event) { if (event.target.classList.contains('remove-row')) { event.target.closest('.repeater-row').remove(); } }); }); // REPEATERS document.addEventListener('DOMContentLoaded', function() { // Function to add a new row to the repeater function addRepeaterRow(repeaterElement) { const newRow = repeaterElement.querySelector('.lcp-repeater-row').cloneNode(true); // Clone the first row repeaterElement.appendChild(newRow); // Add remove functionality to the new row's remove button const removeButton = newRow.querySelector('.remove-row'); removeButton.addEventListener('click', function() { newRow.remove(); // Remove the row when the button is clicked }); } // Find all .lcp-repeater elements in the DOM const repeaters = document.querySelectorAll('.lcp-repeater'); repeaters.forEach(function(repeaterElement) { // Add event listener for the "Add Row" button const addButton = repeaterElement.querySelector('.add-row'); addButton.addEventListener('click', function() { addRepeaterRow(repeaterElement); // Add a new row when clicked }); // Initially, make sure each row has a remove button functionality const rows = repeaterElement.querySelectorAll('.lcp-repeater-row'); rows.forEach(function(row) { const removeButton = row.querySelector('.remove-row'); removeButton.addEventListener('click', function() { row.remove(); // Remove the row when the remove button is clicked }); }); }); }); // REPEATERS // Example html: //