2012-08-12 12 views
5

E 'possibile creare classe CSS dinamico per il GridView in ExtJS senza disco codifica la classe CSS all'interno del foglio di stile, per esempioCome creare classe CSS dinamica in ExtJS o javascript

DEFAULT_ROW_COLOR = '#E0E0E0'; 
... 
var gridview = new Ext.grid.GroupingView({ 
    forceFit : forceFit, 
    hideGroupedColumn : true, 
    showGroupName : false, 
    groupTextTpl: '{text}', 
    getRowClass : getRowClassFunc 
}); 

var getRowClassFunc = function(record, rowIndex, rowParams, store) { 
    if (rowIndex == 1) { 
    // create a dynamic class based on DEFAULT_ROW_COLOR for background color 
    } 
    if (rowIndex > 1) { 
    // create a dynamic class for darker color for the background. 
    } 
}; 

risposta

6

Si potrebbe utilizzare Ext.util.CSS.createStyleSheet (disponibile sia in ExtJS 3.4 che ExtJS 4.1) per lo scopo esatto.

Esempio:

Ext.util.CSS.createStyleSheet(
    '.some-row-class {background-color:' + DEFAULT_ROW_COLOR + ';}' 
); 
+0

Grazie @ Li0liQ. –

+0

Ho provato questo, sembra funzionare anche: var getRowClassFunc = function (record, rowIndex, rowParams, store) { rowParams.tstyle + = 'background-color:' + DEFAULT_ROW_COLOR + ';'; if (rowIndex == 1) { rowParams.tstyle + = 'background-color:' + another_color + ';'; } }; –

Problemi correlati