ändern der Hintergrundfarbe von grid-Zeilen dynamisch in extjs 4.2.2

Ich habe meine grid-lädt eine Liste von Daten, und einige der Daten sollten ändern Sie den hintergrund-Wert zu einem bestimmten Zeitpunkt Wert. Wenn das Datum kleiner ist als das heutige Datum, es sollte mit der css-Klasse 'jetzt', sonst 'später'.
Es funktioniert gut, aber mein problem ist, dass nur eine Zeile ändern der Hintergrundfarbe, damit es nicht durch die ganze Liste.

heres my grid:

grid = Ext.create('Ext.grid.Panel', {
                store: store,
                xtype: 'gridpanel',
                columns: [
                    { text: 'Name', dataIndex: 'name', tdCls: 'x-grid-cell' }
                ],
                stripeRows: false,
                viewConfig: {
                    getRowClass: function(record, index) {

                    var date = Ext.Date.parse(record.get('reminderDate'),"c").valueOf();
                    var today = Ext.Date.parse(Ext.Date.format(new Date(), 'Y-m-d'), "c").valueOf();

                    return today < date ? 'later' : 'now'

                }                    
            },
            renderTo: Ext.getBody()
      });

edit:

Den backgroudn Farben änderungen nur auf die oberste Zeile im raster, der rest bleibt unverändert. jedoch, die getrowclass ruft jeden Zeile.

CSS:

.later .x-grid-cell {
        background-color: #FFB0C4;
    }
.now .x-grid-cell {
        background-color: #5491BD;
    }
  • Sagen Sie getRowClass wird nicht aufgerufen, für jede Zeile, oder, dass die Hintergrundfarbe für jede Zeile, ist nicht zu ändern?
  • es heißt für jede Zeile. die bg Farbe ist nicht zu ändern für jede Zeile
  • Dann ist es vermutlich ein Problem mit deinem css.
  • Ich fügte hinzu, die css-Datei.
InformationsquelleAutor Paparis | 2014-02-17
Schreibe einen Kommentar