2016-10-06 9 views
1

私のWebixデータテーブルでは、あるカラムがDataColletionからデータを取得します。問題は列のフィルタリングにあります。元のデータ(IDを含む)で動作し、データコレクションの値を無視するようです。この動作を変更し、コレクションの値によってデータテーブルをフィルタリングするにはどうすればよいですか?カラムのコレクションをフィルタリングする

データ:

var mycollection = new webix.DataCollection({ 
    data:[{ 
    id: '12', 
    value: 'CollItem 1' 
    }] 
}); 

var mydata = [{ 
    id: 1, 
    name: 'Item 1', 
    troublesomeColumn: '12' // id of the CollItem 1 
}]; 

設定:

columns:[{ 
    id: 'troublesomeColumn', 
    collection: mycollection, 
    header:{ 
    content:"textFilter" 
    } 
}], 
data:mydata 

Code snippet。前もって感謝します。

答えて

1

フィルタはリンクされたコレクションのテンプレートや値ではなく、データセットで機能します。

{ 
    content:"textFilter", 
    compare:function(value, filter, obj){ 
     var colValue = mycollection.getItem(value).value; 
     toFilter = colValue.toString().toLowerCase();        
     filter = filter.toString().toLowerCase(); 
     return toFilter.indexOf(filter) !== -1; 
    } 
    } 

Updated snippet

:Webixドキュメントに記載されているようにそのため、即ち、フィルタの compare性に必要なパターンを定義し、 create a custom filtering ruleに必要
関連する問題