доступ к списку отфильтрованных элементов в dataview - PullRequest
8 голосов
/ 10 марта 2011

Я использую DataView для заполнения Grid и использую фильтры для взаимодействия с видимыми строками.Моя проблема заключается в том, что после применения фильтров, изменения строк или изменения количества строк ... как я могу получить доступ к dataview для итерации только по этим видимым строкам, например, для выполнения некоторых вычислений?

Поскольку сами строкипублично не раскрывается ... и если бы они были, строка не всегда является элементом данных, поскольку также может ссылаться на группу, верно?

Есть ли тогда простой способ доступа к этим фильтрованным элементам данных?

(я думаю, что я ищу что-то вроде возможности доступа к "var FilterItems = getFilteredAndPagedItems (_items, _filter);")

спасибо,

Ответы [ 2 ]

9 голосов
/ 17 марта 2011

Используйте dataView.getLength () и dataView.getItem (index) для доступа к отфильтрованным / разбитым на страницы / сгруппированным данным. Это интерфейс, используемый сеткой для связи с источником данных.

1 голос
/ 05 ноября 2015

Я разместил решение здесь, если вы хотите взглянуть на это.Также для тех, кто ищет что-то похожее.

Получить отфильтрованные данные из Dataview в Slickgrid

, если вы хотите показать фильтруемую информацию и информацию оНа текущей странице вы можете сделать что-то вроде этого.

var pagingInfo = dataView.getPagingInfo();
var start = pagingInfo['pageSize'] * (pagingInfo['pageNum']);
var filteredAndPagedItems = dataView.getFilteredItems().slice(start,(start + pagingInfo['pageSize']));
console.table(filteredAndPagedItems);

что-то в этом духе. GetFilteredItems - это пользовательская функция, которую я добавил в dataview.js.Для получения дополнительной информации перейдите по ссылке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...