2016-09-04 1 views
0

filtert Ext js hat in eingebauter Funktion für den Grid-Speicher aufgerufenen Filter und welches Filterrastergebnis mit ausgewähltem Wert aus der Combobox.extjs - Wie man Rasterdaten außer dem ausgewählten Wert in der Combobox

Ich möchte das Gegenteil davon. Es sollte Rasterdaten außer ausgewählten Daten filtern.

Beispiel: Standardmäßig sind alle Kontrollkästchen zuerst ausgewählt. Wenn ich ein Häkchen bei einem Kästchen als Raster ankreuze, sollten die Daten mit Ausnahme des ausgewählten Kästchens angezeigt werden.

Please find screenshot for filter options

folgend ist der Code, den ich versucht haben, aber es hat mit ausgewählten Ankreuzfeld Filtergitter.

var filterArray = []; 

filterArray.push({ 
        id: 'h2', 
        property: 'vehicle_trafic_light', 
        value: 'Y',  //For Yellow-Ball 
        anyMatch: true, 
        ensitive: false 
       }); 
filterArray.push({ 
        id: 'h2', 
        property: 'vehicle_trafic_light', 
        value: 'G',  //For Green-Ball 
        anyMatch: true, 
        ensitive: false 
       }); 

store.filter(filterArray); 

Lassen Sie mich wissen, wenn jemand einen Vorschlag dafür hat.

Antwort

1

Sie können Benutzer filterBy

filterBy eine Funktion nimmt (lässt Anruf Spaß ist) als Argument und Funktion Spaß für jeden Datensatz im Speicher aufgerufen wird.

store.fliterBy(function(record){ 
     if(condition to include record) 
      return true;     // record will be included 
     else 
      return false;     // record will be excluded 
}); 

Und Datensätze werden basierend auf dem Rückgabewert von Spaß für diesen Datensatz gefiltert.

So

  1. Wenn Spaß return true für Rekord A, dann A-Eintrag im Speicher enthalten sein.
  2. Wenn Spaß für Datensatz B false zurückgibt, wird Datensatz B ausgeschlossen.
Verwandte Themen