我希望能够对我的数据的每一列进行过滤。每次我过滤,我都会使用:
public class Person extends RealmObject {
private String name;
private RealmList<Person> friends;
// Other fields…
}
这里的问题是我要过滤的列的dataIndex是一个Object,所以我基本上过滤了'Object'的文字String值。它是Object,因为在我的商店中,我为每个dataIndex存储一个Object,并使用addFilter({
dataIndex: 0, //Or 1,2.. depending on the column i want to filter on
type: 'string',
value: value,
});
函数显示它。
点击标题触发菜单,我有一个文本框我输入过滤器,如果你输入单词'对象'的任何字母,它就可以了。如何使其过滤Object的值,而不是文字字符串“render
”
答案 0 :(得分:2)
您的[object object]
实际上说过滤器应该对字符串起作用。因此,对象被字符串化为var dataIndex = column.dataIndex,
value = textfield.getValue();
grid.getStore().addFilter([{
id:"filter-"+dataIndex,
filterFn:function(record) {
// Example: Only return records where the object has a property by that name.
return Ext.Object.getKeys(record.get(dataIndex)).indexOf(value)>-1;
}
}]);
并与您提供的值进行比较。
相反,您需要使用自定义过滤器功能。在过滤器上使用id会很有用,因此同一列上的新版本将替换旧版本。
iframe
答案 1 :(得分:1)
修改菜单更改侦听器
functions.php