function updateLink() { const linkElement = document.getElementById("appointment_link"); const regex = /((?:|%3Cbr\/?%3E))([\s\S]*?)(&dates)/gi; linkElement.href = linkElement.href.replace(regex, `$1${getSelectedDocs()}$3`); } function getSelectedDocs() { const invoices = document.querySelectorAll('.invoice-checkbox'); const estimates = document.querySelectorAll('.estimate-checkbox'); const invoiceIds = Array.from(invoices) .filter(checkbox => checkbox.checked) .map(checkbox => checkbox.value); const estimateIds = Array.from(estimates) .filter(checkbox => checkbox.checked) .map(checkbox => checkbox.value); let output = ''; for (const value of invoiceIds) { output += `%0AInvoice:%20${value}%0A`; } for (const value of estimateIds) { output += `%0AEstimate:%20${value}%0A`; } // You can return the array or use it as needed return output; }