我开始玩 jqGrid Treegrid 但无论如何我都看不到设置替代行背景颜色。这可能吗?
问问题
3384 次
1 回答
3
如果你的意思是altRows
和altclass
参数,那么没有工作。为了准确地在树网格初始化时间(内部setTreeGrid
),一些 jqGrid 参数将被重置。您如何在此处看到参数的值altRows
将设置为false
. 如果您想象树节点的扩展/折叠可以更改树项目的顺序,那么更改的原因将很清楚,因此您将拥有
从原始树
更新:始终存在解决方法。使用以下代码查看演示:
var resetAltRows = function () {
// I think one can improve performance the function a little if needed,
// but it should be done the same
$(this).children("tbody:first").children('tr.jqgrow').removeClass('myAltRowClass');
$(this).children("tbody:first").children('tr.jqgrow:visible:odd').addClass('myAltRowClass');
};
$("#tree").jqGrid({
url: 'AdjacencyTreeAltRows.json',
datatype:'json',
mtype:'GET',
colNames: ["ID", 'Description', "Total"],
colModel: [
{name:'id', index:'id', width: 1, hidden: true, key: true},
{name:'desc', width:180, sortable:false},
{name:'num', width:80, sortable:false, align:'center'}
],
treeGridModel:'adjacency',
height:'auto',
//altRows: true,
//altclass: 'myAltRowClass',
rowNum: 10000,
treeGrid: true,
ExpandColumn:'desc',
loadComplete: function() {
var grid = this;
resetAltRows.call(this);
$(this).find('tr.jqgrow td div.treeclick').click(function(){
resetAltRows.call(grid);
});
$(this).find('tr.jqgrow td span.cell-wrapper').click(function(){
resetAltRows.call(grid);
});
},
ExpandColClick: true,
caption:"TreeGrid Test"
});
于 2011-06-28T16:04:15.877 回答