2011-12-30 15 views
1

extJSツリー内のノードをチェック/チェック解除する方法は、ノード名(ルート名から親名まで)だけです。私はそうでなければ、treePanel.getNodeById()API linkextJsツリー:名前からノードを取得

で行われたノードのIDと一致しない名前を推測あなたがのパスを持っている:私はExtJSに3.3.0を使用しています、

答えて

2

まずAPIドキュメント内の任意の方法を見つけるcouldntのnode.getPath()

を与えられたノードは、あなただけの

treePanel.expandPath(path, null, function(bSuccess, oLastNode){ oLastNode.select() }); 
treePanel.expandPath(path, null, function(bSuccess, oLastNode){ oLastNode.unselect() }); 

API -Link

を呼び出す必要があります名前の

あなたはノードIDまたはノード上の他のアクセス属性と一致していないノードのテキストプロパティを意味している。

  • ルートノードとその
  • からすべての子ノードの配列を取得
  • あなたがnode.text
  • のマッチングは、このノード
  • から子配列がパス
  • から次の子を取る取る見つけまで、あなたのパスを取り、アレイを介したルート
  • 反復処理後の最初の子を取得します配列通じ
  • 反復あなたはnode.text
  • にマッチングを発見したので、

に最終的にあなたがターゲットノードに到達するまで。電話する必要があることを知ってください

私は選択/非選択の動作をテストしなかったが、コンボをチェック/チェック解除する必要があることに注意してください。折りたたむにはtoggle()、状態を変更したい場合はcollapse()/expand()

関連する問題