api:
**
參考:ztree的addnodes(parentnode, newnodes, issilent)方法的引數說明太具迷惑性了。如圖:
於是我認為這個地方用的是json串,可能是後台**寫太多了,思維定勢吧。用json.stringify()方法把父節點物件和子節點物件序列化之後,再傳入addnodes()方法,提示表示式格式有誤。我以為是我的json化方法用錯了,然後自己拼接json化,各種修改,還是不行。
百思不得其解,只好找來用過這個外掛程式的同事幫忙。
首先,這裡的json,是json物件,不能是json串,在js裡面,乙個json串用type of 操作符得到的是「string」型別,而操作json物件,得到的則是乙個「object」型別。這是本質區別。頭兩個引數的資料型別都不是json串,全部是json物件。第二,parentnode這個引數不是普通的json物件,必須是ztree物件的方法獲取的ztree框架已經定製好的物件型別。這一點這個ztree的示例給的一點都不清楚,addnodes方法的兩個新增示例的parentnode引數竟然都是null。。。。。。完全不考慮第一次用這個外掛程式api使用者的感受。
我寫的新增節點的**,僅供參考:
function ztreenode(id, pid, name)
var orgid = $(text).attr("data-tt-org-id"); var parentorgid = $("input[name='jo.fid']").val();
var name = $("#groupname").val();
var childznode = new ztreenode(orgid, parentorgid, name); //構造子節點
var treeobj = $.fn.ztree.getztreeobj("orgtree");//獲取ztree物件
var parentznode = treeobj.getnodebyparam("id", parentorgid, null); //獲取父節點
treeobj.addnodes(parentznode, childznode, true);
ztree遍歷所有節點
ztree遍歷所有節點 var treeobj fn.ztree.getztreeobj tree var node treeobj.getnodes 可以獲取所有的父節點 var nodes treeobj.transformtoarray node 獲取樹所有節點 console.log nod...
ztree設定節點checked
1 根據id獲取樹的某個節點 var ztree fn.ztree.getztreeobj mytree var node ztree.getnodebyparam id 1 2 設定node節點擊中狀態 ztree.selectnode node 3 設定node節點checked選中,有兩種方法...
zTree獲取(子)節點
1 var ids 2 ids getchildren ids,treenode treenode是選中節點,ids是子節點id陣列,格式 123,223,4,55 1.獲取直接子節點的id 返回值包含選中節點的id,即ids 0 function getchildren ids,treenode ...