Pour filtrer une colonne de la grille, nous pouvons utiliser:Comment filtrer plusieurs colonnes de grille extjs?
{
xtype: 'button',
text:'Search',
handler:function(){
store.clearFilter();
var searchValue = Ext.getCmp("textFieldId").getValue();
store.load().filter('GridFieldName', searchValue);
}
}
mais comment rechercher plusieurs champs à la fois, quelque chose comme:
{
xtype: 'button',
text:'Search',
handler:function(){
store.clearFilter();
var searchValue = Ext.getCmp("textFieldId").getValue();
store.filter([
{property: "GridFieldName", value: searchValue},
{property: "GridFieldName1", value: searchValue}
]);
}
}
des idées?
EDIT:
La chose étrange est que dans les deux cas, seule recherche unique fonctionne:
Cela fonctionne:
store.filter([
{ property: "FirstName", value: searchValue }
]);
et cela fonctionne:
var FirstNameFilter = new Ext.util.Filter({
property: "FirstName", value: searchValue
});
store.filter(FirstNameFilter);
mais ce n'est pas:
store.filter([
{ property: "FirstName", value: searchValue },
{ property: "LastName", value: searchValue }
]);
ou fait ceci:
var filters = [
new Ext.util.Filter({
property: "FirstName", value: searchValue
}),
new Ext.util.Filter({
property: "LastName", value: searchValue
})
];
store.filter(filters);
J'ai édité la question, des idées? –
Non seulement l'OP at-il mentionné que cela ne fonctionne pas mais j'utilise 3.2 (être obligé de le faire) et Ext.util.Filter n'existe pas. Aucune suggestion? –
bonjour ce filtre de code vérifie à la fois le champ si les deux sont disponibles puis retourne le résultat –