複数のフィールドでデータソースをフィルタリングしようとしています。グリッドに Kendo Multi フィルター チェックボックス オプションがあります。すべての列のすべての剣道マルチ フィルターを初期化します。
その後、このような javascipt 関数を使用してフィルターを適用し、グリッドのデータをフィルター処理されたデータとして設定します。
function filterGrid() {
var grid = $("#grid").data('kendoGrid');
var filter = [];
filter.push({ field: "ratingPlace", operator: "startswith", value: "US" });
grid.dataSource.filter(filter);
grid.dataSource.data(grid.dataSource.view());
}
したがって、関数はフィルターをグリッドに適用します。Kendo マルチ フィルタ オプションをクリックすると、古いデータソースのすべてのデータがフィルタ リストに表示されるようになりました。
どうすればこれを回避できますか? dataSource アイテム全体ではなく、フィルター処理されたリストでのみフィルター処理されたデータのみを使用できるようにする必要があります。filterGrid() 関数を実行した後に剣道の複数のチェックボックス フィルターを初期化すると、この問題は発生しません。各列の ("kendoFilterMultiCheck") のソースを再初期化する方法はありますか?? 同じことを示すためにjsfiddleの例を添付しました。
1) 最初に最初の dataSource で列ヘッダーをクリックして、すべてのフィルター マルチ チェックボックスを初期化します 2) フィルター ボタンをクリックします 3) dataSource を置き換えます 4) 新しい dataSource でフィルター マルチ チェックをクリックします - 古いフィルター データがリストに表示されます