我从this得到了这个想法,要为gridview着色,但是他去了内部帐户。所以,请告诉我有没有办法完成上述在线帐户或试用版的工作。
答案 0 :(得分:1)
我找到了一个更好的解决方案:https://crmgridplus.codeplex.com
答案 1 :(得分:0)
你绝对可以使用javascript来做到这一点,但微软不支持操纵DOM
Ps:可以在线上和在线上完成
答案 2 :(得分:0)
Found this on the web。看起来简短而且看似非常低效 我敢打赌,如果网格每页包含250条记录,用户会感到痛苦。
function alterGridRecords() {
var gridTH = document.getElementById("crmGrid_divDataArea");
var headers = gridTH.getElementsByTagName("TH");
var tdata = gridTH.getElementsByTagName("TD");
for (var n = 0; n < headers.length; n++) {
if (headers[n].innerText == "Rating") {
for (var i = 0; i < tdata.length; i++) {
if (tdata[i].innerText == "Hot")
tdata[i].style.backgroundColor = "green";
}
}
}
}
所以我在运行中重写了它(未经过测试)以提高效率。
function alterGridRecords() {
var colName = "Rating";
var gridId = "crmgrid id here";
var gridTH = document.getElementById(gridId);
//find colName index
var colIndex = (function(){
var aTH = gridTH.getElementsByTagName("TH");
for(var i = 0 ; i < aTH.length ; i++)
if (aTH[i] == colName) return i;
return -1;
})();
if (colIndex == -1) return;
var colors = {
Hot : "red",
Cold : "green"
}
var rows = gridTH.getElementsByTagName("TR");
for (var r = 0 ; r < rows.length ; r++)
{
var cell = rows[r].cells[colIndex];
cell.style.backgroundColor = colors[cell.innerText];
}
}
注意:您还需要绑定到网格事件以获取每次用户页面重新绘制的记录,快速搜索或刷新数据