筆記:zTree簡單使用

let setting = {
                            check: {
                                enable: true,
                                chkboxType: { "Y": "ps", "N": "s" }
                            },
                            data: {
                                simpleData: {
                                    enable: true
                                }
                            },
                            async: {
                                autoParam: [],
                                enable: true,
                                url: "/Authority/Privileges/GetPrivilegeTree",
                                type: "post"
                            },
                            callback: {
                                onAsyncSuccess(event, treeId, treeNode, msg) {
                                    if (msg === "") {
                                        layerPage.complete();
                                        window_alert("權限列表加載出錯!");
                                        return;
                                    }
                                    axios.post('/Authority/Privileges/RolePrivilegeList', { roleid: self.role.id }).then((result) => {
                                        var data1 = result.data;
                                        let treeObj = $.fn.zTree.getZTreeObj("privilege_tree");
                                        if (data1 != null && data1.length > 0) {
                                            $.each(data1, function (i, n) {
                                                let node = treeObj.getNodeByParam("id", n.privilege_id, null);
                                                if (node) {     //&& 
                                                    //注:設定節點不宜採取直接給節點賦值方式,建議採用組件提供的方式
                                                    //node.checked = true;
                                                    treeObj.checkNode(node, true, !node.isParent);        
                                                }
                                            });
                                        }
                                        layerPage.complete();
                                    }
                                    ).catch((err) => {
                                        layerPage.complete();
                                        console.log(err);
                                    });
                                },
                                onAsyncError(event,treeId,treeNode,XMLHttpRequest,textStatus,errorThrown) {
                                    layerPage.complete();
                                },
                                beforeAsync(treeId,treeNode) {
                                    console.log("onBeforeLoad");
                                    layerPage.loading();
                                }
                            }

                        };

                        $.fn.zTree.init($("#privilege_tree"), setting, null);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章