第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請教下extjs treeloader加載樹的原理是什么?

請教下extjs treeloader加載樹的原理是什么?

慕神8447489 2023-04-08 18:14:28
 最好有例子說明,我指的是從遠(yuǎn)程加載樹,也就是從數(shù)據(jù)庫讀取樹的數(shù)據(jù)。 下面有我的頁面,實(shí)現(xiàn)的是兩級樹,增刪改功能都有. 現(xiàn)在我想做成3級以上的,我想到的解決方案就是把樹放到store里。 請教實(shí)現(xiàn)方案
查看完整描述

2 回答

?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個贊

loader : new Ext.tree.JsonPluginTreeLoader({ 
                                    url : 'findTree.action' 
                                }), 
                        root : new Ext.tree.AsyncTreeNode({text : '菜單', expanded:true}), 
                        listeners : { 
                            'click' : { 
                                fn :this.onTreeNodeClick, 
                                scope : this 
                            }, 
                            'afterrender':{ 
                                fn : this.onExpandAll, 
                                scope : this 
                            } 
                        }

查看完整回答
反對 回復(fù) 2023-04-12
?
慕容森

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個贊

對于ExtJS中的樹來說,樹加載器TreeLoader是一個比較關(guān)鍵的部件,樹加載器由Ext.tree.TreeLoader類定義,只有AsyncTreeNode才會使用TreeLoader。看下面的代碼:  

  

Ext.onReady(function(){  

  

var loader=new Ext.tree.TreeLoader({  

//url:"treedata.js"  

  

url:'AAA.do?content.method=getTreeNodes&parentId=0'  

});  

var root=new Ext.tree.AsyncTreeNode({  

id:"root",   

text:"根節(jié)點(diǎn)",  

loader:loader});   

var tree=new Ext.tree.TreePanel({  

renderTo:"hello",  

root:root,  

width:100  

});  

  

});   

  

首先我們使用Ext.tree.TreeLoader來初始化了一個TreeLoader對象,構(gòu)造函數(shù)中的配置參數(shù)url表示獲得樹節(jié)點(diǎn)信息的url。然后在初始化根節(jié)點(diǎn)的時候我們使用的是AsyncTreeNode,在該節(jié)點(diǎn)中指定該節(jié)點(diǎn)的 laoder為前面定義的loader。執(zhí)行這段程序,在點(diǎn)擊“根節(jié)點(diǎn)”時,會從服務(wù)器端指定root節(jié)點(diǎn)的子節(jié)點(diǎn)信息。    

   TreeLoader嚴(yán)格來說是針對樹的節(jié)點(diǎn)來定義的,可以給樹中的每一個節(jié)點(diǎn)定義不同的TreeLoader,默認(rèn)情況下,如果一個 AsyncTreeNode節(jié)點(diǎn)在準(zhǔn)備加載子節(jié)點(diǎn)的時候,如果該節(jié)點(diǎn)上沒有定義loader,則會使用TreePanel中定義的loader作為加載器。因此,我們可以直接在TreePanel上面指定loader屬性,這樣就不需要給每一個節(jié)點(diǎn)指定具體的TreeLoader了。  

  

    監(jiān)聽TreePanel的beforeload(node)事件,當(dāng)點(diǎn)擊不同的樹節(jié)點(diǎn)時,將樹節(jié)點(diǎn)ID傳到后臺獲得該node節(jié)點(diǎn)的下級節(jié)點(diǎn)。  

  

如:tree.on('beforeload',function(node){  

  

tree.loader.dataUrl='AAA.do?content.method=getTreeNodes&parentId='+node.id;   

  

});  

  

獲得TreeNode自定義屬性值的方法:node.attributes.XXX。XXX為自定義屬性。  

  


查看完整回答
反對 回復(fù) 2023-04-12
  • 2 回答
  • 0 關(guān)注
  • 141 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號