当我的行的组级别为0时,我在尝试隐藏详细信息指示符时出现问题。
以下是我有行更改颜色的代码的一部分,我认为我应该可以隐藏详细指示符......
dataBound: function (e) {
var data = this.dataSource.data();
$.each(data, function (i, row) {
if (row.get("globalGroupLevel") == 0) {
var element = $('tr[data-uid="' + row.uid + '"] ');
element.addClass("colored-row");
// 4rth attempt
//this.collapseRow(this.tbody.find(">tr.k-master-row"));
//element.collapseRow(this.tbody.find(">tr.k-master-row"));
// 3rd attempt
//this.tbody.find("tr.k-master-row>.k-hierarchy-cell>a").hide();
// 1rst attempt
//element.removeClass("td.k-hierarchy-cell .k-icon");
// 2nd attempt
//var masterRow = this;//.element.closest("tr.k-detail-row").prev();
//$("#CatalogGrid").data("kendoGrid").collapseRow(masterRow);
//masterRow.find("td.k-hierarchy-cell .k-icon").removeClass();
}
});
}
你可以看到我把我的尝试注释掉了以及我尝试了什么。 因此,当globalGroupLevel等于0时,您可以看到我的行变为蓝色,这是详细指示符不应该出现的时候......
这是一个通常看起来像的截图
以及我在尝试时的样子
这就是我试图让它看起来的方式
任何想法?并且重申一下,当globalGroupLevel为= 0
时,需要隐藏详细指示符答案 0 :(得分:0)
尝试使用dataBound中的内容:
dataBound: function() {
var dataSource = this.dataSource;
this.element.find('tr.k-master-row').each(function() {
var row = $(this);
var data = dataSource.getByUid(row.data('uid'));
// this example will work if ReportId is null or 0 (if the row has no details)
if (!data.get('globalGroupLevel')) {
row.find('.k-hierarchy-cell a').css({ opacity: 0.3, cursor: 'default' }).click(function(e) { e.stopImmediatePropagation(); return false; });
}
});
}
希望这个帮助
编辑:为了方便起见,我做了一个隐藏所有Detai指标的例子 现在你只需要进行验证即可隐藏。