:: Forum >> Version 1 >>
Row Color
More information on this topic is available in the documentation section:
/active.howto.style.rows/alternate-background-colors.html.
I have read many of the topics and found much information,but not what i needed. i like the feature of alternating row colors, but can only utilize 2 colors. i want something similar but want to maje it alternate every 4 or 5 rows. some reason i was getting an error using
var colors = ["#eee", "#ddd", "#ccc"];
obj.defineDataProperty("color", function(i){return colors[i]});
var row = new Active.Templates.Row;
row.setStyle("background", function(){
return this.getRowProperty("color");
});
obj.setRowTemplate(row);
maybe i just dont see it. also is there a way to set 1 row to a different height then predefined height
thank you, Larry
Wednesday, August 4, 2004
// set alternate higlighting
obj.alternateColors = ["#eee", "#ddd", "#ccc"];
obj.alternate = function(){ return obj.alternateColors[this.getProperty("row/order") % obj.alternateColors.length]; }
obj.getTemplate("row").setStyle("background", obj.alternate);
It is safer to use obj.alternateColors and obj.alternate than var alternateColors and function alternate (which may create problem or non-re-usable code, if you have more than one grid on the same page and want things differently)
Hope this helps ;-)
Sudhaker Raj
Wednesday, August 4, 2004
Suggested code will work like this with minimal modification.
colors[i%colors.length] will do the trick and avoid out-of-bound index
var colors = ["red", "blue", "green"];
obj.defineDataProperty("color", function(i){return colors[i%colors.length]});
var row = new Active.Templates.Row;
row.setStyle("background", function(){
return this.getItemProperty("color");
});
obj.setRowTemplate(row);
This should work fine.
Sudhaker Raj
Wednesday, August 4, 2004
This topic is archived.
Back to /active.howto.style.rows/alternate-background-colors.html
Documentation:
Forum search