Javascript 数据绑定后保持剑道细节网格展开
这是我当前的网格和detailExpand/Databind。您将看到我试图获取uid,然后在触发数据绑定后展开该行。expandedRowUid控制台日志未定义。请有人帮我正确获取uid或提供替代解决方案,以便在触发数据绑定后,细节网格不会折叠或在数据绑定后再次展开Javascript 数据绑定后保持剑道细节网格展开,javascript,data-binding,kendo-ui,grid,detail,Javascript,Data Binding,Kendo Ui,Grid,Detail,这是我当前的网格和detailExpand/Databind。您将看到我试图获取uid,然后在触发数据绑定后展开该行。expandedRowUid控制台日志未定义。请有人帮我正确获取uid或提供替代解决方案,以便在触发数据绑定后,细节网格不会折叠或在数据绑定后再次展开 function teacherHierarchyGrid() { $("#teacherGrid").kendoGrid({ detailInit: detailInit,
function teacherHierarchyGrid() {
$("#teacherGrid").kendoGrid({
detailInit: detailInit,
selectable: true,
dataBound: function () {
console.log("Bind occured")
this.expandRow($('tr[data-uid=' + expandedRowUid + ']'));
},
detailExpand: function (e)
expandedRowUid = e.masterRow.data('uid');
console.log(expandedRowUid)
},
})
}
**编辑**新代码仍不工作
var expandedRow;
function teacherHierarchyGrid() {
$("#teacherGrid").kendoGrid({
detailInit: detailInit,
selectable: true,
autoBind: false,
dataBound: function(e){
if (expandedRow) {
console.log(expandedRow);
e.sender.expandRow($('tr[data-uid=' + expandedRow + ']'));
}
},
detailExpand: function (e) {
expandedRow = e.sender.dataItem(e.masterRow).uid;
},
})
}
首先,由于detailExpand函数中缺少{},它可能未定义日志:
detailExpand: function (e) {
expandedRowUid = e.masterRow.data('uid');
console.log(expandedRowUid);
}
第二,在dataBound函数中,您在console.log(“Bind-occured”)之后缺少分号
第三,在重新创建行之后,与行关联的uid可能不相同:在数据绑定之后,同一行可能具有不同的uid,因为它是由小部件生成的。尝试引用要展开的行,直到数据项Id为。仍不展开该行。我确实注意到dataBind事件被触发了两次,所以我确保将autoBind设置为false。我为我的错误道歉:第三点不是真的,通过这个关键字你实际上选择了网格小部件。问题是,在重新创建行之后,uid可能不相同:在数据绑定之后,同一行可能具有不同的uid。请尝试引用要展开的行。如果您提供的代码是您定义的数据源,我可以进一步帮助您。是否要自动展开所有详细信息行?如果是,,