document.querySelectorAll('[data-datalist-bind]').forEach(input => { const datalistSelector = input.dataset.datalistBind; const hiddenSelector = input.dataset.hiddenTarget; const datalist = document.querySelector(datalistSelector); const hidden = document.querySelector(hiddenSelector); if (!datalist || !hidden) return; input.addEventListener('input', function () { const value = this.value; const options = datalist.querySelectorAll('option'); let foundId = ''; options.forEach(option => { if (option.value === value) { foundId = option.dataset.id || ''; } }); hidden.value = foundId; }); });