async function setupProjectCodeAutocomplete() { const input = document.getElementById('projectCode'); let debounceTimer; input.addEventListener('input', function (e) { clearTimeout(debounceTimer); const searchTerm = e.target.value; if (searchTerm.length < 2) return; debounceTimer = setTimeout(async () => { try { // Replace with your actual API endpoint const response = await fetch(`/api/projects/search?term=${encodeURIComponent(searchTerm)}`); const projects = await response.json(); const datalist = document.getElementById('projectCodeList'); datalist.innerHTML = ''; projects.forEach(project => { const option = document.createElement('option'); option.value = project.code; option.textContent = `${project.code} - ${project.name}`; datalist.appendChild(option); }); } catch (error) { console.error('Error fetching project codes:', error); } }, 300); }); } function populateItemCategSelect() { $.ajax({ url: "/ItemMgmt/GetItemCateg", success: function (response) { if (response && response.success && Array.isArray(response.data)) { var $itemCategorySelect = $('#itemCategorySelect'); $itemCategorySelect.empty(); response.data.forEach(function (item) { var option = $('') .attr('value', item.itemCategoryId) .text(item.itemCategoryName); $itemCategorySelect.append(option); }); if (response.data.length > 0) { var firstItem = response.data[0]; $itemCategorySelect.val(firstItem.itemCategoryId); $('#ItemCategory2Id').val(firstItem.itemCategoryId); } } else { console.error('Invalid data format received:', response); } }, error: function (error) { console.error('Error fetching item categories:', error); } }); $('#itemCategorySelect').on('change', function () { var selectedCategoryId = $(this).val(); $('#ItemCategory2Id').val(selectedCategoryId); }); } function populateItemCateg() { $.ajax({ url: "/ItemMgmt/GetItemCateg", success: function (data) { if (data && data.success && Array.isArray(data.data)) { var categs = data.data; $('#ItemCategory').empty(); $('#ItemCategory').append($('