Ext中同时隐藏field和label的方法

来源:互联网 发布:意林少年版合订本(淘宝 编辑:程序博客网 时间:2024/06/05 10:42
Ext中同时隐藏field和label的方法 | DOJO中国
前几天搞了很久,查了很久的API也没搞定(因为API里面没有这种函数),反而是今天上它

的官网去查别的资料的时候看到了一个网友也提出了同样的问题,所以就拿来用了,在此鸣谢那

位老兄:

Javascript代码

function hideField(field)
{
field.disable();// for validation
field.hide();
field.getEl().up('.x-form-item').setDisplayed(false); // hide label
}

function showField(field)
{
field.enable();
field.show();
field.getEl().up('.x-form-item').setDisplayed(true);// show label
}
this.userTypeField=new Ext.ux.EnumField({
hiddenName:'userinfo.userType',
fieldLabel:'用户类型',
tableName:'userinfo',
fieldName:'userType',
allowBlank : false,
listeners:{
select:function(){
var value = this.getValue();
//Ext.log(value);
if(value == '2')
{
//formPanel.stationidField.setVisible(false); //这种方法只能隐藏field而不能隐藏field //formPanel.hospitalidField.setVisible(true); 对应的label,用下面的方法则可以一起隐藏.

hideField(formPanel.stationidField);
showField(formPanel.hospitalidField);
}
if(value == '3')
{
//formPanel.hospitalidField.setVisible(false);
//formPanel.stationidField.setVisible(true);
hideField(formPanel.hospitalidField);
showField(formPanel.stationidField);
}
if(value == '1' || value == '4')
{
//formPanel.hospitalidField.setVisible(true);
//formPanel.stationidField.setVisible(true);
showField(formPanel.hospitalidField);
showField(formPanel.stationidField);
}
}
}
});

转自:http://scnujie.javaeye.com/blog/210215
原创粉丝点击