(function ($, Drupal, drupalSettings) { function toDropdown(field, i) { let searchValueSelectId = 'edit-terms-' + i + '-value'; let SearchValueFieldselector = "[id^='" + searchValueSelectId + "']"; let $searchValueInputField = $(SearchValueFieldselector); $searchValueInputField.hide(); let $oldHelperField = $('#edit-terms-' + i + '-helper'); $oldHelperField.remove(); $searchValueInputField.after(''); let $newHelperField = $('#edit-terms-' + i + '-helper'); console.log($newHelperField); if (field === 'f9ee0627498eacd6da7456ebc67cdab2') { // Art des Ausgangs $newHelperField.empty(); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); } else if (field === 'fcde5cd3cae88c211869faeee17a1606') { // Art des Eingangs $newHelperField.empty(); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); } else if (field === 'f112b71c83c942dbe763b6948de3e55a') { // Art des Geschäfts (Ausgang) $newHelperField.empty(); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); } else if (field === 'f72f76cc5137b99f47668a9d26bd7d4f') { // Art des Gescäfts (Eingang) $newHelperField.empty(); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); } else if (field === 'fe9c9a6d122f8605300a4f64882df6b4') { // Objektkategorie $newHelperField.empty(); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); $newHelperField.append(''); } $newHelperField.change(function () { let selectedOption = $newHelperField.find('option:selected'); $searchValueInputField.val(selectedOption.val()).text(selectedOption.text()); console.log('field have changed'); }); } Drupal.behaviors.advanceSearchEntityFields = { attach: function attach(context, settings) { let $searchSelectElement = $('[id^="edit-terms-0-search"]'); let originalSearchSelectOptions = $searchSelectElement.find('option').clone(); $searchSelectElement.empty(); $searchSelectElement.append(''); $searchSelectElement.append(''); $searchSelectElement.append(''); $(document).on('change', '.advanced-search-form--entity', function () { let id = $(this).attr('id'); let i = id.substring(11, 12); let $select = $('#' + id); let searchSelectId = 'edit-terms-' + i + '-search'; let selector = "[id^='" + searchSelectId + "']"; let $searchSelect = $(selector); if ($select.val() === 'b48556e79962e0a3c8d0041317c853b9') { // Archivalie $searchSelect.empty(); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); } else if ($select.val() === 'ba419826c9014f40126565bf413f7a59') { // Auktion $searchSelect.empty(); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); } else if ($select.val() === 'b1d559f7b6af224a3f6f3b9a12e6b161') { // Institution $searchSelect.empty(); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); } else if ($select.val() === 'b65c3a85d16724d84a5eb0d2268629a6') { // Objekt $searchSelect.empty(); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); } else if ($select.val() === 'b1afe1fa9a31c7622ab2ae8ef1d29673') { // Person $searchSelect.empty(); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); } else if ($select.val() === 'ueberall') { $searchSelect.empty(); $searchSelect.append(''); $searchSelect.append(''); $searchSelect.append(''); } }); $(document).on('change', '.advanced-search-form--select-field', function () { let id = $(this).attr('id'); let i = id.substring(11, 12); let field = $(this).val(); console.log(i); if (['f9ee0627498eacd6da7456ebc67cdab2', 'fcde5cd3cae88c211869faeee17a1606', 'f112b71c83c942dbe763b6948de3e55a', 'f72f76cc5137b99f47668a9d26bd7d4f'].includes(field)) { let dropdown = toDropdown(field, i); } }); } }; })(jQuery, Drupal, drupalSettings);