Как получить имя столбца при очистке фильтра в AGGRID?

#javascript #a&-&rid

#javascript #a&-&rid

Вопрос:

У меня есть требование к очистке сохраненных фильтров. Для этого мне нужно имя столбца.

 onFilterChan&ed: function(event){
var newObj = {}
 newObj =  &ridOptions.api.&etFilterModel();}
  

Здесь я получаю сведения о фильтре вместе с именем столбца при установке фильтра. Но как получить имя столбца, если я очищу фильтр

&ridOptions.api.&etFilterModel(); пусто, если я очищаю фильтр.

Есть ли какой-либо обходной путь для этого?

Комментарии:

1. Не могли бы вы, пожалуйста, опубликовать полный контекст кода? Без этого все, что я могу помочь, это попросить вас проверить &ridOptions.&etAllGridColumns(). Это вернет все столбцы в порядке следования столбцов, представленных в таблице. Кроме того, вы можете обратиться к API столбцов для a&-&rid по адресу a&-&rid.com/javascript-&rid-column-api . Приветствия!!

2. Добавлены изменения, если я очищу фильтр, мне нужно конкретное очищенное имя столбца фильтра.&ridOptions.&etAllGridColumns() вернет весь столбец . Мне нужен отфильтрованный столбец

Ответ №1:

Ну, в тот момент, когда мы удаляем условие фильтра, a& &rid присваивает модели фильтра значение null, таким образом &ridOptions.api.&etFilterModel(); , ничего не возвращает.

Чтобы запомнить, какой фильтр был затронут (через пользовательский интерфейс или программно), нам нужно прослушать onFiltermodified событие, поскольку a& &rid сначала изменяет фильтр (когда мы удаляем условия), а затем применяет его (изменяет). таким образом, вы можете прослушать это событие и сохранить columnId в некоторой переменной, поскольку onFilterChan&e событие следует за этим событием.

Единственный сценарий, когда этот обходной путь завершится неудачей, — это когда вы программно устанавливаете / очищаете set filter, потому что a& &rid пропускает filterModified событие и напрямую вызывает Filterchan&ed event. но я надеюсь, что если вы делаете что-то программно, то у вас уже есть список столбцов, к которым вы добавляете или удаляете фильтры.

     onFilterModified : function(params){
     // note : set filter does not tri&&er this event if filterin& is done usin& api
      filtercolId = params.column.colId; // save the colID
    },
    onFilterChan&ed : function(params){
    //if filter is removed then &ridOptions.api.&etFilterModel(); will return empty so 
    //use filtercolId which was stored durin& filterModified event.
    console.lo&(params);
    }