diff --git a/source/components/datatable/filter.mjs b/source/components/datatable/filter.mjs index e268d4c877572486cdf99327ac5cd2029c06c9f3..aa73a5161bcdb6e54d7526ed00a9c6241cdff3f1 100644 --- a/source/components/datatable/filter.mjs +++ b/source/components/datatable/filter.mjs @@ -242,6 +242,7 @@ class Filter extends CustomElement { * @property {Object} features Feature definitions * @property {boolean} features.storedConfig Stored configuration, this replaces the setting `storedConfig.enabled` @since 3.97.0 * @property {boolean} features.autoFilter Auto filter @since 3.100.0 + * @property {boolean} features.preventSameQuery Prevent same query @since 3.103.0 * @property {Object} storedConfig Stored configuration * @property {boolean} storedConfig.enabled The store has been enabled, this option will no longer have any effect. @deprecated 20250101 * @property {string} storedConfig.selector Selector @@ -277,6 +278,7 @@ class Filter extends CustomElement { features: { storedConfig: false, autoFilter: true, + preventSameQuery: false, }, storedConfig: { @@ -1061,7 +1063,8 @@ function doSearch({ showEffect } = { showEffect: true }) { return Promise.reject(new Error(msg)); } - if (buildQuery === this.getOption("query")) { + if (this.getOption("features.preventSameQuery") && + buildQuery === this.getOption("query")) { const msg = this.getOption("labels.query-not-changed"); if (showEffect) {