easyUi Tree的CheckBox级联选中问题

需求:子结点选中,父节点随之选中,父节点取消,子节点随之取消,但是加载的时候不进行级联加载
var data = [{
            "id": 1,
            "text": "系统",
            "children": [{
                "id": 11,
                "text": "用户管理",
                "children": [{
                    "id": 19,
                    "text": "增加"
                }, {
                    "id": 3,
                    "text": "修改"
                }, {
                    "id": 5,
                    "text": "删除"
                }]
            }, {
                "id": 12,
                "text": "角色管理",
                "children": [{
                    "id": 13,
                    "text": "增加"
                }, {
                    "id": 3,
                    "text": "修改"
                }, {
                    "id": 5,
                    "text": "删除"
                }]
            }]
        }, {
            "id": 2,
            "text": "其他",
            "state": "closed"
        }];

$("#tt").tree({
                data: data,
                checkbox: true,
                // 必须是false否则在加载已经配置的子节点下没选中的也会选中
                cascadeCheck: false,
                onCheck: function (node, checked) {
                    // 选中时  一般不进行操作 让用户自己选中
                    if (checked) {
                        var parentNode = $("#xxx").tree('getParent', node.target);
                        if (parentNode != null) {
                            $("#xxx").tree('check', parentNode.target);
                        }
                    } 
                    // 取消时一般进行全部取消
                    else {
                        var childNode = $("#tt").tree('getChildren', node.target);
                        if (childNode.length > 0) {
                            for (var i = 0; i < childNode.length; i++) {
                                $("#tt").tree('uncheck', childNode[i].target);
                            }
                        }
                    }
                }
            });






猜你喜欢

转载自forlan.iteye.com/blog/2273871