KendoUI-选择时禁用某些节点

时间:2019-10-23 00:39:56

标签: javascript kendo-ui kendo-treeview

我有2个剑道树视图; 1个不带复选框,另一个1个带复选框like example here。 可以说我想禁用第二个树形视图上的某些节点,当我选择第一个树形结构上的某个节点时,带有复选框的树形视图(例如,当我选择家具时,我想禁用非家具类的节点)。该过程有点像example here一样,但是没有按钮,只是从选择第一个树视图上的节点开始。我该如何实现?

1 个答案:

答案 0 :(得分:0)

TreeList有一个名为select的事件,可以为您处理该行为:

Counter

Dojo

替代方法:您可以像下面那样过滤第二个TreeView:

select: function(e) { 
    let tv = $("#treeview-right").data("kendoTreeView"), // Gets the 2dn treeview reference
        text = e.sender.dataItem(e.node).text; // Gets the 1st treeview selected text

    // Iterates over the 2nd treeview items
    tv.items().toArray().forEach(item => {
        let dataItem = tv.dataItem(item), // Get the item related dataItem
            disabled = (dataItem.type !== text); // Figures out if the current item is of selected type

        // Gets the current item's checkbox
        $(item).find('input[type="checkbox"]')
            .prop('checked', false) // Uncheck it by default
            .prop('disabled', disabled); // Disable/enable based on above condition
    });
}

Dojo