Aby filtrować jedną kolumnę siatki możemy użyć:Jak filtrować wiele kolumn siatki extjs?
{
xtype: 'button',
text:'Search',
handler:function(){
store.clearFilter();
var searchValue = Ext.getCmp("textFieldId").getValue();
store.load().filter('GridFieldName', searchValue);
}
}
ale jak szukać wielu pól jednocześnie, coś takiego:
{
xtype: 'button',
text:'Search',
handler:function(){
store.clearFilter();
var searchValue = Ext.getCmp("textFieldId").getValue();
store.filter([
{property: "GridFieldName", value: searchValue},
{property: "GridFieldName1", value: searchValue}
]);
}
}
jakieś pomysły?
EDIT:
dziwne jest to, że w obu przypadkach tylko pojedyncze wyszukiwania działa:
to działa:
store.filter([
{ property: "FirstName", value: searchValue }
]);
i to działa:
var FirstNameFilter = new Ext.util.Filter({
property: "FirstName", value: searchValue
});
store.filter(FirstNameFilter);
, ale nie ma to znaczenia:
store.filter([
{ property: "FirstName", value: searchValue },
{ property: "LastName", value: searchValue }
]);
lub robi to:
var filters = [
new Ext.util.Filter({
property: "FirstName", value: searchValue
}),
new Ext.util.Filter({
property: "LastName", value: searchValue
})
];
store.filter(filters);
Edytowałem pytanie, jakieś pomysły? –
Nie tylko OP oświadczył, że to nie działa, ale używam 3.2 (zmuszony do) i Ext.util.Filter nie istnieje. Jakieś sugestie? –
witam ten filtr kodu sprawdź oba pola, jeśli oba są dostępne, a następnie zwróć wynik –