1.初始化樹: $.fn.ztree.init($("#treedemo"), setting, znodes),#treedemo-放置樹的容器id,setting引數設定,znodes初始化的節點;
2.setting 引數設定如下
var setting = ,data:
},callback:
};
3.後台自定義類,用來接受樹資料,返回給前台繫結樹使用,個人覺得這個樹結構是很方便的,可以在後台將樹處理好,只要是正確的父級id,綁好資料返回給前台就能用了,基本不用再做其他處理,非常方便
public class jstreemodel//樹id
public string pid //父級id
public string name //名字
public bool open //是否預設展開
public bool isparent //是否是父級節點,非同步載入時使用
public bool @checked //是否選中
}
4.後台處理好資料用上面定義的 jstreemodel 的list型別接收,返回到前台,直接給樹繫結,在前台就能看到完整的樹結構了
5.考慮到樹資料量大的問題,需要啟用非同步載入,只需要在設定引數中新增非同步的引數
var setting = },//其他引數,自定義引數datafilter: filter//過濾器,對後台傳回來的資料進行處理後再交給樹
} ,
check: ,
data:
},callback:
};
在非同步載入的時候出現過幾個問題,一是非同步方法不進去,發現是父節點沒有設定isparent屬性,在初始化的時候,給父節點的isparent屬性設定為true,二是子節點不展示,發現時過濾器方法不對,資料沒有返回,三是勾選父節點,再進行非同步載入,子節點沒有被勾選,這個通過非同步方法將父節點的選中屬性(checked)傳到後台,賦值給查詢到的子節點就行了,四是自定義引數的問題,在otherparam裡面傳的引數只是初始值,如果是使用者輸入之類的引數值,會一直都是空,所有需要使用函式的方式傳值,就上面所寫到的
"username": function ()
Vim 使用筆記
set hlsearch set nohlsearch 搜尋後清除上次的加亮 nohl nohlsearch 拷貝 很有用的一句話,規定了格式選項,讓它換行不自動空格 set formatoptions tcrqn set fo r set noautoindent 再 shift insert 正...
xemacs使用筆記
xemacs使用筆記 xemacs emacs的下一代,由lucid原創 from debian參考手冊.由於不知道什麼時候刪掉了emacs的乙個重要檔案.每次都沒法安裝好.突然發現了xemacs,於是決定使用看看.本人還是菜鳥,僅供交流 我使用的ubuntu系統,所以就直接apt get inst...
TreeView使用筆記
treeview由節點構成,建樹通過對treeview.items屬性進行操作。items是乙個ttreenodes物件,這是乙個ttreenode集。一 針對ttreenodes,也就是 treeview.items,有這些屬性 1 count,節點個數。2 item index 通過index得...