ztree經過ajax獲取json並勾選checkbook

應上級要求,項目的樹列表要用ztree,那就服從命令吧。node

配置

var zTree;
    var setting = {
        view: {
            dblClickExpand: false,  //雙擊節點時,是否自動展開父節點的標識
            showLine: true,         //設置ztree是否顯示節點之間的連線
            selectedMulti: false,   //設置是否容許同時選中多個節點
        },
        check: {
            enable: true            //設置ztree的節點是否顯示checkbox/radio
        },
        data: {
            simpleData: {
                enable:true,        //是否使用簡單數據模式
                idKey: "id",        //節點數據中保存惟一標識的屬性名稱
                pIdKey: "p_id",     //節點數據中保存其父節點惟一標識的屬性名稱
                rootPId: ""         //用於修正根節點父節點的數據,即pIdKey指定的屬性值
            }
        },
        callback: {
            onClick:function (e,treeId,treeNode,clickFlag) {     //用於捕捉勾選時觸發
                zTree.checkNode(treeNode,!treeNode.checked,true);//勾選或取消勾選單個節點
            }
        }
    };

ajax

var zNodes ;
    var select;
    var selectarry=[];   //要勾選的id
    var allnodes;
    var t = $("#tree");
    $.ajax({
        type: "POST",
        url: "...",//請求的後臺地址
        data: "name=John&location=Bpston",//前臺傳給後臺的參數
        dataType:"json",
        ansync:false,
        ContentType: "application/json; charset=utf-8",
        success: function(msg){         //msg:返回值
            // alert( msg.data );
            zNodes=msg.data.list;
            zNodes=eval(zNodes);
            //zNodes=JSON.stringify(zNodes);
            //console.log(zNodes);
            //alert(zNodes)
            t = $.fn.zTree.init(t, setting, zNodes);
            var zTree2 = $.fn.zTree.getZTreeObj("tree");
            selectarry=msg.data.nodes.split(",");
            allnodes=zTree2.getNodes();
            for(select=1;select<selectarry.length;select++)
            {
                allnodes[select]=msg.data.list[select];
            }
            console.log(allnodes);
            //console.log(selectarry);
            for(select=0;select<selectarry.length;select++)
            {
                zTree2.checkNode(zTree2.getNodesByParam("id",selectarry[select])[0],true);
            }

        }
    });

ps:

附展開、摺疊、勾選、取消所有節點的方法ajax

//展開和摺疊
    $("#ztreeExpandAll").click(function () {
        $.fn.zTree.getZTreeObj("tree").expandAll(true);
    });
    $("#ztreeUnExpandAll").click(function () {
        $.fn.zTree.getZTreeObj("tree").expandAll(false);
    });

    //勾選所有或取消所有
        var clicknumber=1;

        $("#checkall_deafult").click(function () {
            if(clicknumber%2>0) {
                // var treeObj = $.fn.zTree.getZTreeObj("tree");
                zTree.checkAllNodes(true);
            }
            else {
                // var treeObj = $.fn.zTree.getZTreeObj("tree");
                zTree.checkAllNodes(false);
            }
            clicknumber++;
        });
相關文章
相關標籤/搜索