【问题标题】:Multi-level grid hierarchy - grandparent data多级网格层次结构 - 祖父数据
【发布时间】:2015-11-12 16:27:27
【问题描述】:

在层次结构的transaction 级别,我需要访问#grid 数据中的值。这可以作为参数传递还是必须使用 jQuery 遍历 DOM?

$(document).ready(function () {
    var element = $("#grid").kendoGrid({
        ...
        detailInit: summary
    });
});

function summary(e) {
    $("<div/>").appendTo(e.detailCell).kendoGrid({
        ...
        detailInit: transactions
    });
}

function tranasctions(e) {
    $("<div/>").appendTo(e.detailCell).kendoGrid({
        ...
    });
}

【问题讨论】:

    标签: javascript kendo-ui kendo-grid


    【解决方案1】:

    AFAIK,detailInit 事件仅在其第一个参数对象中提供 masterRow 属性,它代表父扩展行。所以恐怕你必须遍历它。我建议将masterRow 存储在第二个详细信息网格中的data 属性中,以便在最后一级找到它:

    二级网格:

    $(e.detailCell).kendoGrid({
        // settings ...
    }).data("master", e.masterRow);
    

    这将创建一个名为“master”的数据属性,其中包含第一个展开的行。然后在第三级你可以检索它:

    var root = $(e.masterRow).closest(".k-detail-cell").data("master");
    

    Demo

    【讨论】:

    • 非常感谢您的回复——非常有用。我已经修改了您的演示以包含标签条dojo.telerik.com/UwuXi/3。现在root 返回undefined。知道为什么吗?
    • @user1405195 这是因为您更改了创建最后一个网格的元素,在本例中为 .people 元素。您还必须更改root 的来源。 dojo.telerik.com/UwuXi/4
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-23
    • 1970-01-01
    • 2021-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多