diff --git a/js/auto_submit.js b/js/auto_submit.js index b28f63a..be5d257 100644 --- a/js/auto_submit.js +++ b/js/auto_submit.js @@ -81,13 +81,23 @@ // Use debounce to prevent excessive submits on text field changes. // Navigation key presses are ignored. else if ($target.is(':text:not(.hasDatepicker), textarea') && $.inArray(e.keyCode, ignoredKeyCodes) === -1) { - Drupal.debounce(triggerSubmit, 500)($target); + return; } // Only trigger submit if a change was the trigger (no keyup). else if (e.type === 'change') { triggerSubmit($target); } }); + + $(selectors, context).addBack(selectors).find('input:text:not(.hasDatepicker), textarea').once('bef-auto-submit-text').on('change keyup keypress', Drupal.debounce(function (e) { + var $target = $(e.target); + + // Don't submit on changes to excluded elements or a submit element. + if ($target.is('[data-bef-auto-submit-exclude], :submit')) { + return true; + } + triggerSubmit($target); + }, 500)); } }