aspxページのテーブルにExcelのようなフィルタリングを実装する必要があります。
私が欲しいのは、列ヘッダーをクリックすると、その列の行のリストが表示され、それぞれにチェックボックスが付いているはずです。特定の行を選択すると、それに応じてテーブルがフィルタリングされます。
aspxページのテーブルにExcelのようなフィルタリングを実装する必要があります。
私が欲しいのは、列ヘッダーをクリックすると、その列の行のリストが表示され、それぞれにチェックボックスが付いているはずです。特定の行を選択すると、それに応じてテーブルがフィルタリングされます。
これは、一度に 1 つの列の実際の例です。私はこれをいくつかの列でも機能させることに取り組んでいます: http://jsfiddle.net/mwB37/20/
UI とすべてを備えた完全なプラグインを求めているので、関連するコードを SO に含めるのはちょっと難しいです。しかし、ここに私の考え方とコンセプトを定義する重要な抜粋があります。
// fetching the column index
var columnIndex = th.index();
// then fetching the corresponding TDs (use for-loop when thousands of elements)
var tds = th.closest('table')
.find('tbody td:nth-child(' + (columnIndex+1) + ')');
// distinctively selecting the unique text values in those columns
var checks = $.unique(tds.map(function() {
return $(this).text();
}).get());
// the most basic way possible of filtering
// (should be extended into an OR query of all current column filters)
if (index != -1 || arr.length == 0)
td.parent('tr').show();
else
td.parent('tr').hide();
代わりに既に完成したものが必要な場合は、次のようなプラグインがあります: PicNet Table Filter
jQuery DataTables プラグイン で利用できるフィルタリングプラグインもありますが、その主な目的は明らかに並べ替えです。