diff --git a/public/js/icinga/behavior/modal.js b/public/js/icinga/behavior/modal.js index 7e940b566..0083f769b 100644 --- a/public/js/icinga/behavior/modal.js +++ b/public/js/icinga/behavior/modal.js @@ -119,8 +119,10 @@ } }); - // otherwise the form is submitted several times by clicking the "Submit" button several times - $form.find('input:not(:disabled)').prop('disabled', true); + if (typeof $autoSubmittedBy === 'undefined') { + // otherwise the form is submitted several times by clicking the "Submit" button several times + $form.find('input[type=submit],button[type=submit],button:not([type])').prop('disabled', true); + } event.stopPropagation(); event.preventDefault(); diff --git a/public/js/icinga/loader.js b/public/js/icinga/loader.js index 8d3ecd182..d298cc5d8 100644 --- a/public/js/icinga/loader.js +++ b/public/js/icinga/loader.js @@ -129,8 +129,11 @@ // Disable all form controls to prevent resubmission except for our search input // Note that disabled form inputs will not be enabled via JavaScript again - if (! $form.is('[role="search"]') && $target.attr('id') === $form.closest('.container').attr('id')) { - $form.find('input:not(:disabled)').prop('disabled', true); + if (! $autoSubmittedBy + && ! $form.is('[role="search"]') + && $target.attr('id') === $form.closest('.container').attr('id') + ) { + $form.find('input[type=submit],button[type=submit],button:not([type])').prop('disabled', true); } // Show a spinner depending on how the form is being submitted