extjs 递归获得下级子节点

    在最近在coding过程中,遇到了这样一个情况(ext.js):有很多具有级联关系的combobox(后台动态生成,id有规律),在其中一个选择改变时,其下级子节点(所有子类节点)都clean value,回到页面初始渲染状态。后台想到这种情况可以在每个动态生成的combobox绑定一个选择改变事件,通过递归(递推)的思路解决


效果截图如下:

                                       

 

代码如下:

  //递归移除当前节点id 有级联关系的所有combobox
        function CursionNextNode(currentId) {
            //获得当前控件的临近下一个控件
            var nextItems = Ext.getCmp(currentId).nextSibling();
            var currentItems = Ext.getCmp(currentId);
            if (currentItems.xtype == "combobox" ) {
                //移除级联子项
                while (currentItems.store.data.length > 0) {
                    currentItems.removeByIndex(0);
                    currentItems.setValue( "");
                }
            }
            if (nextItems != null ) {
                CursionNextNode(nextItems.id);
            }
        }

  

 

posted @ 2016-03-20 22:29  娃娃看天下  阅读(415)  评论(0编辑  收藏  举报