1. Extjs 同步樹treepanel,如何提高載入速度只載入根節點數據,展開節點後再載入節點下數據。
extjs的樹形結構本身就會很慢,3000個節點也絕對是致命的,如果一起載入很可能會版出現頁面請求超時,所權以我們的項目中用到這種比較大的樹一般不會選擇用extjs本身的樹形結構,一般會選用比較輕量級的框架,比如zTree,他能跟extjs很好的結合,有能力可以改改css,這樣跟extjs的主題會更加和諧,zTree使用簡單,速度不只是extjs treepanel的幾倍,可非同步載入,也可直接載入,個添加各種事件,你值得擁有
2. 如何獲取Ext treepanel樹內所有選中的節點數據之getChecked
獲取所有選中的節點代碼如下所示:
TreePanel.getChecked();
遍歷獲取所有的選中節點數據:
varselNodes=TreePanel1.getChecked();
varuserList=newArray();
//遍歷獲取所有的節點數據
Ext.each(selNodes,function(node){
//子節點也就是用戶節點
if(node.data.leaf){
varuser=newObject();
user.name=node.data.text;
user.no=node.data.NodeID;
userList.push(user);
}
});
3. Ext 中 treePanel節點自動全部展開問題;
記得有自動展開的方法啊,沒必要自己一個節點一個節點的展開,如果是想點擊當前節點展開子節點的話,稍微麻煩點,以前寫過,不過目前辭職了Extjs也不用了沒有源碼,多看看api應該可以弄出來 tree的展開事件你要記得一點 當展開父節點,在展開事件中展開子節點,那麼子節點展開勢必又再次觸發展開事件,沒必要你自己用個循環展開