Skip to main content
Participant
January 6, 2022
Question

Row color is not rendered in CFGRID in CF2021

  • January 6, 2022
  • 0 replies
  • 130 views

Row color displayed in red in CF2016. On migrating to CF2021, it is rendering default color.

Please find attached code snippet for your reference.

Please help.

 

Thank you.

<!--- Create a new three-column query, specifying the column data types ---> 
<cfset myQuery = QueryNew("Name, Time, Advanced", "VarChar, Time, Bit")> 
 
<!--- Make two rows in the query ---> 
<cfset QueryAddRow(MyQuery, 2)> 
 
<!--- Set the values of the cells in the query ---> 
<cfset QuerySetCell(myQuery, "Name", "The Wonderful World of CFML", 1)> 
<cfset QuerySetCell(myQuery, "Time", "9:15 AM", 1)> 
<cfset QuerySetCell(myQuery, "Advanced", False, 1)> 
<cfset QuerySetCell(myQuery, "Name", "CFCs for Enterprise Applications", 2)> 
<cfset QuerySetCell(myQuery, "Time", "12:15 PM", 2)> 
<cfset QuerySetCell(myQuery, "Advanced", True, 2)> 

<html>
<head>
<script language="javascript">
var gridName= "WorkListGrid";
var init = function () 
{ 
RenderGrid();
}

function myRender (data, meta, record, rowIndex, colIndex, store) {
if (typeof data != 'undefined'){
	data = '<a style="' + record.data.ROWCOLOR +  '">' + data + '</a>';
	}
	return data;
}
RenderGrid = function() {
    mygrid = ColdFusion.Grid.getGridObject('WorkListGrid');
	mygrid.autoExpandColumn='ROWCOLOR';
	mygrid.autoExpandColumnId='ROWCOLOR';
	var iWidth=100;
    cm = mygrid.headerCt.getGridColumns();
    	cm[1].renderer = myRender;
		cm[2].renderer = myRender;
		cm[3].renderer = myRender;
}
</script>

</head>
<cfset ajaxOnLoad("init")>
<body>

<cfform action="" method="POST" name="mainListFrm">
<cfgrid name = "WorkListGrid" format="HTML" rowHeaderBold="yes" multirowselect="yes" selectMode="row"
        height="300" width="900" striperows="yes" striperowcolor="F0F8FF" selectonload="no"
        font="Tahoma" fontsize="12" rowheaders="yes" >
		<cfgridcolumn name="Name" width="150" header="Name" headerMenu="no"  />
		<cfgridcolumn name="Time" width="150" header="Time" headerMenu="no"  />
		<cfgridcolumn name="Advanced" width="150" header="Advanced" headerMenu="no"  />
		<cfgridcolumn name="rowColor" width="75" header="rowColor" display="no" headerMenu="no"/>
	
<cfoutput query="myQuery">
<cfset rowColor=lcase("color:Red;font-weight:normal;")>
<cfgridrow data ="#Name#|#Time#|#Advanced#|#rowColor#" delimiter="|">
</cfoutput>
</cfgrid>

</cfform>
</body>
</html>
    This topic has been closed for replies.