最近在用Extjs进行前端开发,发现一些component的hide方法往往不能达到我们想要的效果,
大部分组件的fieldLabel都是无法隐藏掉的。
经过查阅,发现可以通过下面两个方法,比较好的解决这个问题
然后,我们如果需要把隐藏掉的组件再次显示出来,可以使用下面这个方法
因为目前的系统使用的extjs版本较老,所以只能用这种方法去解决这个问题,不知道官方是不是在新版本中彻底解决此问题。
大部分组件的fieldLabel都是无法隐藏掉的。
经过查阅,发现可以通过下面两个方法,比较好的解决这个问题
function hideComponent(comp){
comp.disable();
comp.hide();
if(comp.getEl()!=null && comp.getEl().up('.x-form-item') !=null){
comp.getEl().up('.x-form-item').setDisplayed(false);
}
}
然后,我们如果需要把隐藏掉的组件再次显示出来,可以使用下面这个方法
function showComponent(comp){
comp.enable();
if(comp.getEl()!=null && comp.getEl.up('.x-form-item')!=null) {
comp.getEl.up('.x-form-item').setDisplayed(true);
}
comp.show();
}
因为目前的系统使用的extjs版本较老,所以只能用这种方法去解决这个问题,不知道官方是不是在新版本中彻底解决此问题。