当单击组合框中的树中的[+]时,停止组合框崩溃 - extjs 3

时间:2010-10-11 23:04:14

标签: combobox extjs tree

我使用来自this thread

的想法在combobox中实现了树

但是当点击树上的[+]或箭头时,组合框会折叠

有没有办法阻止这个?????????

请帮助我....非常感谢.......

问候

2 个答案:

答案 0 :(得分:0)

此处的问题相同 - 我的解决方法是显示默认情况下展开的树。 然而,这并没有用箭头解决问题......

基本上,当单击树并因此崩溃时,组合框看到“模糊”事件。 但我不知道如何防止这种情况。

顺便说一下,如果有人为ExtJS提供了完全正常工作“组合框+树”解决方案,那将非常有帮助。 因为Sencha论坛上提供的解决方案非常有限:

  • 组合框的显示和值必须相同(而我希望它的值是树的节点ID)
  • 当组合框的一部分时,没有办法“恢复”组合框的值/显示(例如使用“form.loadRecord()”)

答案 1 :(得分:0)

感谢Pepijn回答了我的问题。这是解决方案:

您可以使用beforecollapsenode和beforeexpandnode事件之前的树来查找是否按下了它们。请参阅以下代码:

 tree1.on('click',function(node){
             combo.setValue(node.text);
             nodeAction=0;
             combo.collapse();
           });
tree1.on('beforeexpandnode',function(node,deep,anim){
             nodeAction=1;
            });
tree1.on('beforecollapsenode',function(node,deep,anim){
             nodeAction=1;
            });
combo.on('collapse',function(){
               if(nodeAction==1){
                 this.expand();
                 nodeAction=0;
               }  
             });