隐藏及显示,formPanel 中的某些属性
1.
var commonOperate = function(items , operateType)
{
if (!items || items.length <= 0)
{
return ;
}
var item = null;
for (var i = 0, len = items.length; i < len ; i = i + 1)
{
item = items[i];
if (item)
{
item = Ext.getCmp(item);
if (item)
{
item[operateType]();
// 同步隐藏label
if (operateType == 'hide' && item.fieldLabel)
{
item.getEl().up('.x-form-item').setDisplayed(false);
}
else if (operateType == 'show' && item.fieldLabel)
{
item.getEl().up('.x-form-item').setDisplayed(true);
}
}
}
}
}
2. Ext.getCmp('WR0106').inputType = 'hidden';
3.使用ext在使用hide()隐藏field时,会发现文本域隐藏了,但标签尚未隐藏。可以推断,field是将label和文本域分开写了。之前,我做法是将field定义到另外一个容器,然后通过其父容器,间接隐藏field。对此方式,有些厌烦,侥幸今天寻找到了一个新的实现方法,感觉不错。展示如下:
function hideField(field)
{
field.disable();// 隐藏文本域
field.hide();
field.getEl().up('.x-form-item').setDisplayed(false); //隐藏标签,'.x-form-item'系统中的容器id
}
function showField(field)
{
field.enable();
field.show();
field.getEl().up('.x-form-item').setDisplayed(true);
}