diff --git a/core/modules/views/js/ajax_view.js b/core/modules/views/js/ajax_view.js index 1b9f1189ce9a464ad6fa1b88b1b597f9ef14ae92..edfba50c0b70af1f19db45aadd5f52f635821608 100644 --- a/core/modules/views/js/ajax_view.js +++ b/core/modules/views/js/ajax_view.js @@ -108,14 +108,15 @@ * @method */ Drupal.views.ajaxView.prototype.attachExposedFormAjax = function () { - var button = $('input[type=submit], input[type=image]', this.$exposed_form); - button = button[0]; - - var self_settings = $.extend({}, this.element_settings, { - base: $(button).attr('id'), - element: button + var that = this; + this.exposedFormAjax = []; + $('input[type=submit], input[type=image]', this.$exposed_form).each(function (index) { + var self_settings = $.extend({}, that.element_settings, { + base: $(this).attr('id'), + element: this + }); + that.exposedFormAjax[index] = Drupal.ajax(self_settings); }); - this.exposedFormAjax = Drupal.ajax(self_settings); }; /** diff --git a/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php b/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php index 11a3e2d710e1469b96a12925aabab51c33d6745f..d17f70c7828e98b34a14e75b2368352782f5c769 100644 --- a/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php +++ b/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php @@ -321,7 +321,7 @@ public function resetForm(&$form, FormStateInterface $form_state) { } // Set the form to allow redirect. - if (empty($this->view->live_preview)) { + if (empty($this->view->live_preview) && !\Drupal::request()->isXmlHttpRequest()) { $form_state->disableRedirect(FALSE); } else {