【问题标题】:Parent node check in jstreejstree中的父节点检查
【发布时间】:2015-06-12 22:26:48
【问题描述】:

我有一个jstree,如下图:

$('#FolderTree').jstree({
            'core': {
                'data': [
                            {
                                'text': 'Claim key',
                                'state': {
                                    'opened': false,
                                    'selected': false
                                },
                                'children': claimKeys
                           },
                            {
                                'text': 'Client',
                                'state': {
                                    'opened': false,
                                    'selected': false
                                },
                                'children': clients
                            }
                         ]
                  },

            "plugins": ["checkbox"]
        });

对于复选框的单击事件,我使用以下 jquery:

$('#FolderTree').on("select_node.jstree", function (e, data) {
            var checkedValue = data.node.text;
  });

但我想先确定我点击的复选框是父节点还是子节点..我该怎么做??

【问题讨论】:

  • 我对 jstree 不熟悉,但是在 API 中它说有 is_parentget_parent 函数可以帮助你。 jstree.com/api/#

标签: javascript jquery jstree


【解决方案1】:

您可以使用此代码:

$('#FolderTree').on("select_node.jstree", function (e, data) {
    var checkedValue = data.node.text;
    var isParent = data.instance.is_parent(); 
    // you can also use is_leaf() to check the opposite
});

is_parent 会告诉你节点是否有任何子节点,is_leaf 会告诉你它是否是叶节点(如果它没有子节点)- 使用其中一个。

如果您需要检查一个节点是否是根节点,您可以使用:
var isRoot = (data.node.parents.length === 1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多