2011-03-10 8 views
8

私はGridを作成するためにDataViewを使用し、可視の行と対話するためにフィルタを使用しています。私の問題は、フィルタを適用した後、行の変更、または行のカウントの変更...どのように私は、それらの可視の行だけを反復するために、いくつかの計算を行うためにデータビューにアクセスできますか?データビュー内のフィルタリングされた項目のアクセスリスト

行自体は公開されていないため、行がデータ要素であるとは限りません。グループを参照することもできますか?

フィルタリングされたデータ要素に簡単にアクセスできますか?

おかげで、

答えて

9

利用dataView.getLength()と;

( "VaRのfilteredItemsの=のgetFilteredAndPagedItems(_items、_filter)" 私は私が探しているものを推測がアクセスできることのようなものです)フィルタリングされた/ページされた/グループ化されたデータにアクセスするためのdataView.getItem(index)。 グリッドがデータソースと通信するために使用するインターフェイスです。

+0

はい、私は今それをやっており、検索されたアイテムが行かグループかどうかを確認しています。しかし、この最後のチェックをスキップする方法があるかどうかを知りたければ、行にのみアクセスしたいので、グループを破棄しています。ありがとう! – Marc

+0

グループを手動でフィルタリングする必要があります。 これは、グルーピングが実装される方法です。グループは、追加のメタデータを含む通常の行のようにグリッドに供給されます。 – Tin

0

私はそれを一見するためにここに解決策を掲載しました。似たようなものを探している人たちのためにも。

Get Filtered data from Dataview in 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に追加されたカスタム関数です。詳細はリンクをご覧ください。

関連する問題