Я исправляю эту проблему с помощью этого трюка:
$('#yourCustomButtonId').on('click', function(){ $('.filter-show-clear').trigger('click') });
И если вам нужно скрыть кнопку, вы можете использовать это:
.filter-show-clear {visibility: hidden; position: absolute; top: -9999px}
Это исправит проблему.
Примечание: о вашем коде и почему он не работает, поскольку функция удаления - это фильтр удаления, очистка файлов cookie и фильтры сброса .. и т. Д.
BootstrapTable.prototype.clearFilterControl = function () {
if (this.options.filterControl && this.options.filterShowClear) {
var that = this,
cookies = collectBootstrapCookies(),
header = getCurrentHeader(that),
table = header.closest('table'),
controls = header.find(getCurrentSearchControls(that)),
search = that.$toolbar.find('.search input'),
timeoutId = 0;
$.each(that.options.valuesFilterControl, function (i, item) {
item.value = '';
});
setValues(that);
// Clear each type of filter if it exists.
// Requires the body to reload each time a type of filter is found because we never know
// which ones are going to be present.
if (controls.length > 0) {
this.filterColumnsPartial = {};
$(controls[0]).trigger(controls[0].tagName === 'INPUT' ? 'keyup' : 'change');
} else {
return;
}
if (search.length > 0) {
that.resetSearch();
}
// use the default sort order if it exists. do nothing if it does not
if (that.options.sortName !== table.data('sortName') || that.options.sortOrder !== table.data('sortOrder')) {
var sorter = header.find(sprintf('[data-field="%s"]', $(controls[0]).closest('table').data('sortName')));
if (sorter.length > 0) {
that.onSort(table.data('sortName'), table.data('sortName'));
$(sorter).find('.sortable').trigger('click');
}
}
// clear cookies once the filters are clean
clearTimeout(timeoutId);
timeoutId = setTimeout(function () {
if (cookies && cookies.length > 0) {
$.each(cookies, function (i, item) {
if (that.deleteCookie !== undefined) {
that.deleteCookie(item);
}
});
}
}, that.options.searchTimeOut);
}
};
Я устал искать опцию очистки кнопки, но я не нашел ее, так что вам нужно активировать текущий фильтр или построить свою зависимость от прототипа ядра для функции очистки или каким-либо другим способом ...