let colCount = 1; $(document).ready(function() { $('.unit_kerja').select2({ placeholder: '-- Pilih Unit Kerja --', allowClear:true, width: '100%', ajax:{ url : '/select-unit-kerja', dataType: 'json', delay: 250, data: function(params){ return { q: params.term } }, processResults: function(data){ return { results : data?.data.map(item => ({ id: item.id, text: item.name, sub_units: item?.sub_unit_kerja })) } }, cache: true, }, minimumInputLength: 1, }); $('.sub_unit_kerja').select2({ placeholder: '-- Pilih Sub Unit Kerja ', allowClear:true, width: '100%', }) $('.unit_kerja').on('select2:select', function(e){ let data = e.params.data; $('.sub_unit_kerja').empty().append('') if(data.sub_units && data.sub_units.length > 0){ data.sub_units.forEach(sub => { $('.sub_unit_kerja').append(``) }) } }) $('.klasifikasi_dok').select2(); $('.kategori_dok').select2(); selectOptionUnitKerja(0) }); function addForm(){ let col = $("#col_add_file") let html = ''; html += `

` col.append(html) selectOptionUnitKerja(colCount) colCount++; } function removeCol(count){ $(`#col-${count}`).remove() } function selectOptionUnitKerja(colCount) { let selectUnit = $(`#select_id_unit_kerja_${colCount}`); let selectSubUnit = $(`#select_id_sub_unit_kerja_${colCount}`); // inisialisasi select2 untuk Unit Kerja selectUnit.select2({ placeholder: '-- Pilih Unit Kerja --', allowClear:true, width: '100%', dropdownParent: selectUnit.parent(), ajax:{ url : '/select-unit-kerja', dataType: 'json', delay: 250, data: function(params){ return { q: params.term } }, processResults: function(data){ return { results : data?.data.map(item => ({ id: item.id, text: item.name, sub_units: item.sub_unit_kerja // kirim ke front })) } }, cache: true, }, minimumInputLength: 1, }); selectSubUnit.select2({ placeholder: '-- Pilih Sub Unit Kerja --', allowClear: true, width: '100%', dropdownParent: selectSubUnit.parent() }); // event ketika unit kerja dipilih selectUnit.on('select2:select', function (e) { let data = e.params.data; // data unit kerja terpilih selectSubUnit.empty().append(''); if (data.sub_units && data.sub_units.length > 0) { data.sub_units.forEach(sub => { selectSubUnit.append(``); }); } // aktifkan select2 untuk sub unit }); }