zTree_v3 icon indicating copy to clipboard operation
zTree_v3 copied to clipboard

结点展开、勾选均无反应

Open HomWong opened this issue 8 years ago • 1 comments

我构建了两棵树,第二棵树是根据第一棵树构造的,第一棵树正常,但是第二颗树不能展开、收缩、勾选、取消勾选。我在Firefox中调了一下,对于勾选状态,设置断点时能看到勾选状态有改变,断点取消状态没有改变,不知道这是为什么? var zTree = $.fn.zTree.getZTreeObj("treeDemo"); var zQueryTreeNodes = new Array();

var zArray = zTree.getNodes();
var treeNodeObj;
for (var i = 1; i < zArray.length; i++) {
    treeNodeObj = "";
    treeNodeObj = { id: zArray[i].id, pId: 0, isParent: true, name: zArray[i].name, icon: "img/gdb/mapDoc.png", open: true, checked: zArray[i].checked, collapse: true, expand: false };
    zQueryTreeNodes.push(treeNodeObj);        
    

    if (zArray[i].children.length > 0) {
        var zArrayChild = zArray[i].children;
        for (var j = 0; j < zArrayChild.length; j++) {
            treeNodeObj = "";
            treeNodeObj = { id: zArrayChild[j].id, pId: zArrayChild[j].pId, isParent: false, name: zArrayChild[j].name, icon: "img/gdb/mapDoc.png", checked: zArrayChild[j].checked, doCheck: true };
            zQueryTreeNodes.push(treeNodeObj);                
        }
    }
    
}   

//
var settings = {
    check: {
        enable: true
    },
    data: {
        simpleData: {
            enable: true,
            rootPId: 0
        }
    },
    callback: {
        onCheck: function (srcEvent, treeId, node) {
        
        },
       onClick:function (event, treeId, treeNode) {
           alert("haha");
           var treeObj = $.fn.zTree.getZTreeObj("queryTree");
           var nodes = treeObj.getSelectedNodes();
           treeObj.expandNode(nodes[0], true, true, true);
       },
       onExpand: function (event, treeId, treeNode) {               
           var treeObj = $.fn.zTree.getZTreeObj("queryTree");               
           treeObj.expandNode(treeNode);
           treeObj.expandAll(false);
       },
       beforeCheck: function (treeId, treeNode) {
           alert("1");
            return true;
       }

    }
};


var zQueryTree =$.fn.zTree.init($("#queryTree"), settings, zQueryTreeNodes);

HomWong avatar Jul 26 '17 15:07 HomWong

你为何要在 onExpand 里面又去执行 expandNode???? onExpand 回调本身就是在展开后触发,然后你有执行 expandNode方法,这样就又折叠上了。

对于 check 的问题,请对照 Demo 检查一下吧,看看是否有什么js 报错

zTree avatar Aug 02 '17 10:08 zTree