一旦选择了父母,如何防止选择孩子?

时间:2014-06-20 04:44:54

标签: javascript jstree

我想在选择父节点时自动禁用子节点。我怎么能在jstree中实现这个目标?

.on('select_node.jstree', function(e, data)
{
    console.log("$$$$$$$$$");
    obj = data.instance.get_node(data.node.id, true);
    if (obj.parentsUntil('.jstree','li').children('a.jstree-clicked').length ||         obj.children('ul').find('a.jstree-clicked:eq(0)').length){
    data.instance.deselect_node(obj);
    }
});

我使用此代码但无法找到任何结果。请帮帮我。

1 个答案:

答案 0 :(得分:0)

您可以使用data.node.children来获取节点的子节点。或者你可以使用data.node.children_d让所有孩子,甚至是孩子的孩子。

以下是如何遍历所有子项的示例:

for (var i = 0; i < data.node.children_d.length; i++) {
  //for example disable node
  $(\'#jstree_demo_div\').jstree(true).disable_node(data.node.children_d[i]);
}

希望有所帮助!