ztree中获取选中节点下的所有叶子节点

ztree中获取选中节点下的所有叶子节点

var setting = {
    data: {
        simpleData: {
            enable: true
        }
    },
    callback: {
        onClick: treenodeClick
    }
};

//点击树节点,获取节点的所有叶子节点id
function treenodeClick(event, treeId, treeNode, clickFlag) {
    //此处treeNode 为当前节点
     var str =‘‘ ;
     if(treeNode.isParent){
         str = getAllChildrenNodes(treeNode,str);
     }else{
         str=treeNode.id;
     }
     alert(str); //所有叶子节点ID
}

//使用了递归,得到叶子节点的数据
function getAllChildrenNodes(treeNode,result){
    if (treeNode.isParent) {
      var childrenNodes = treeNode.children;
      if (childrenNodes) {
          for (var i = 0; i < childrenNodes.length; i++) {
           if(childrenNodes[i].isParent){
            result = getAllChildrenNodes(childrenNodes[i], result);
           }else{
            result += ‘,‘ + childrenNodes[i].id;
           }
          }
      }
  }
  return result;
}

时间: 2024-10-24 04:15:32

ztree中获取选中节点下的所有叶子节点的相关文章

QT中获取选中的radioButton的两种方法(动态取得控件的objectName之后,对名字进行比较)

QT中获取选中的radioButton的两种方法 QT中要获取radioButton组中被选中的那个按钮,可以采用两种如下两种办法进行: 方法一:采用对象名称进行获取 代码: 1 QRadioButton* pbtn = qobject_cast<QRadioButton*>(ui->BG->checkedButton()); 2 QString name = pbtn->objectName(); 3 if(!QString::compare(name, "rad

js中创建html标签、加入select下默认的option的value和text、删除select元素节点下全部的OPTION节点

<pre name="code" class="java"> jsp 中的下拉框标签: <s:select name="sjx" id="sjx" list="sjxList" listKey="BM" listValue="MC" size="20" cssStyle="width:100%;height:70px;

JQuery/JS插件 jsTree加载树,初始化时加载前三级节点,当展开第三级节点时 就加载该节点下的所有子节点

jsTree加载树, 初始化时 加载前三级节点, 当展开第三级节点时 就加载该节点下的所有子节点 html: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <div id="plugins1"></div> <link

Dev GridView 获取选中分组下的所有数据行 z

现在要在DevExpress 的GridView 中实现这样一个功能.就是判断当前的选中行是否是分组行,如果是的话就要获取该分组下的所有数据信息. 如下图(当选中红框中的分组行事.程序要获取该分组下的所有数据) 实现代码如下: List<int> _gridViewRowIndexs = new List<int>(); //存储GridView 中选中的行索引 private void Test() { int[] rows = gridView1.GetSelectedRows

zTree异步展开根节点下的所有子节点

//展开根节点下的第一级子节点        function expendOneNode(event,treeId,treeNode){                        zTree = $.fn.zTree.getZTreeObj("treeDemo");            var node = zTree.getNodes();            //console.log(treeId);            if(treeNode==null){    

QT中获取选中的radioButton的两种方法

QT中要获取radioButton组中被选中的那个按钮,可以采用两种如下两种办法进行: 方法一:采用对象名称进行获取 代码: 1 QRadioButton* pbtn = qobject_cast<QRadioButton*>(ui->BG->checkedButton()); 2 QString name = pbtn->objectName(); 3 if(!QString::compare(name, "radioButton")) 4 { 5 QM

六:二叉树中第k层节点个数与二叉树叶子节点个数

二叉树中第k层节点个数 递归解法: (1)如果二叉树为空或者k<1返回0 (2)如果二叉树不为空并且k==1,返回1 (3)如果二叉树不为空且k>1,返回左子树中k-1层的节点个数与右子树k-1层节点个数之和 代码如下: int GetNodeNumKthLevel(BinaryTreeNode *pRoot, int k) { if(pRoot == NULL || k < 1) return 0; if(k == 1) return 1; int numLeft = GetNodeN

mysql下如何删除本节点下的所有子节点小记

在开发过程中,经常会遇到树形结构的数据,在删除某个节点时候其所有的子节点都要被删除,可以使用如下方法: 1.添加记录该节点所有父节点的ID的字段(parent_ids),并用逗号隔开(一定是逗号),如1,2,3 2.删除时使用find_in_set 函数,如:id=#{当前节点ID} and find_in_set(#{当前节点ID},parent_ids) 原文地址:https://www.cnblogs.com/wangxulong/p/8541600.html

求二叉树第K层的节点个数+求二叉树叶子节点的个数

size_t _FindLeafSize(Node* root)     //求二叉树叶子节点的个数    {        //static size_t count = 0;        if (root == NULL)            return 0; if (root->_left == NULL&&root->_right == NULL);        return 1; return _FindLeafSize(root->_right) +