zoukankan      html  css  js  c++  java
  • 获取EasyUI的treegrid的checkbox所有已勾选的数据

    EasyUI为TreeGrid的已勾选节点,未勾选节点,只勾选部分子节点的父节点分别添加了三个不同的样式,如下:
    样式一:tree-checkbox2 有子节点被选中
    样式二:tree-checkbox1 节点被选中
    样式三:tree-checkbox0 节点未选中

    那么,我们就可以依据这三个样式分别取到所有已勾选的主键值了,为方便使用,我们写成TreeGrid的扩展方法,代码如下:

        $.extend($.fn.treegrid.methods, {  
            //iscontains是否包含父节点(即子节点被选中时是否也取父节点)  
            getAllChecked: function (jq, iscontains) {  
                var keyValues = new Array();  
                /*
                  tree-checkbox2 有子节点被选中的css
                  tree-checkbox1 节点被选中的css
                  tree-checkbox0 节点未选中的css
                */  
                var checkNodes = jq.treegrid("getPanel").find(".tree-checkbox1");  
                for (var i = 0; i < checkNodes.length; i++) {  
                    var keyValue1 = $($(checkNodes[i]).closest('tr')[0]).attr("node-id");  
                    keyValues.push(keyValue1);  
                }  
          
                if (iscontains) {  
                    var childCheckNodes = jq.treegrid("getPanel").find(".tree-checkbox2");  
                    for (var i = 0; i < childCheckNodes.length; i++) {  
                        var keyValue2 = $($(childCheckNodes[i]).closest('tr')[0]).attr("node-id");  
                        keyValues.push(keyValue2);  
                    }  
                }  
          
                return keyValues;  
            }  
        });  

    调用方法:

    var kv = $("#XXX").treegrid("getAllChecked", true);  
    alert(kv);

    另外,1.4.5版本以后的,提供如下几个方法:

        var kv = $("#XXX").treegrid("getCheckedNodes");  获取勾选的节点  
        var kv = $("#XXX").treegrid("checkNode",id);  根据ID勾选节点  
        var kv = $("#XXX").treegrid("uncheckNode",id);  根据ID取消勾选节点 

  • 相关阅读:
    leetcode 第 48 场双周赛
    线段树总结篇
    nodemon 自动重启nodejs服务
    腾讯云 openssl 升级
    windows下批量杀死进程
    ./bin/mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
    python 获取过去几天,过去几个月,过去几年的时间列表
    Mysql解决The total number of locks exceeds the lock table size错误
    win 10 如何找到 mysql 的 my.ini 文件
    爬虫 requests ValueError: check_hostname requires server_hostname
  • 原文地址:https://www.cnblogs.com/hnsongbiao/p/8111517.html
Copyright © 2011-2022 走看看