Dojo Datagrid - Stijl geselecteerde rij programmatisch

Is het mogelijk om de geselecteerde rij van een Datagrid programmatisch te stylen?

Kan iemand een fragment geven?

2

3 antwoord

Probeer dit (hier is een fiddle met voorbeeld van een aangepaste referentiegids):

var grid = new dojox.grid.DataGrid({
    id: 'grid',
    store: store,
    structure: layout,
    rowSelector: '20px',
    onClick: function() {
       //( selection.selected is array for multiple)
        var index = this.selection.selectedIndex,
       //typically 1 here, mess with it if nogo on solution
        viewindex = 1,
        RAWROWNODE = this.views.views[viewindex].rowNodes[index]

    }
}, document.createElement('div'));

U kunt ook kijken in het stylesheet, gebruikt door de grid-component.

.dojoxGridRow,
.dojoxGridRowOdd,
.dojoxGridRowSelected {
}
1
toegevoegd
De oplossing was inderdaad om de CSS die het raster gebruikte te overschrijven. Om specifieker te zijn gebruik ik het claro-thema en de claroGrid.css en ik binnenin heb ik het veranderd: Voor de geselecteerde rij: .claro .dojoxGridRow Geselecteerde .dojoxGridRowTable tr td [style] {background-colour: # cee6fa! Important; } Voor de rij Over: .claro .dojoxGridRowOver .dojoxGridCell {background: url ("images/row_back.png") # ABD6FF repeat-x! Important; border-top: 1px solid # 769DC0; border-bottom: 1px solid # 769DC0; }
toegevoegd de auteur Redg, de bron

Probeer dit

 dojo.connect(grid, 'onStyleRow', this, function (row) {
    if (grid.selection.selectedIndex == row.index) {
       row.customStyles += "color: red;";            
    }

    grid.focus.styleRow(row);
    grid.edit.styleRow(row);
});
0
toegevoegd

Waarom niet gewoon de juiste CSS-klasse overschrijven? Anders wilt u misschien kijken naar onStyleRow en styleRowState-functie

0
toegevoegd