`
wwwzhouhui
  • 浏览: 358672 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ComboBox 控件隐藏 fieldLabel 不能隐藏问题解决

阅读更多

 最近弄一个EXTJS 项目,刚刚学 遇到不少问题,现将遇到的一个ComboBox 控件隐藏 fieldLabel 不能隐藏问题解决办法整理出来

 1 问题描述

     ComboBox在FormPanel里面初始化的时候设置隐藏 注意hidden :true 属性,这样ComboBox在FormPanel加载后隐藏了,但是问题是他的fieldLabel 还是显示出来。

 

{
						id:'moidfyForm_combo',
						xtype:'combo',
						fieldLabel : '协议类型',
						valueField : "id",
						hidden :true,
						displayField : "value",
						forceSelection : true,
						allowBlank : false,
						typeAhead : true, // 自动将第一个搜索到的选项补全输入()
						mode : 'local',
						hiddenName : 'updatetypeName2',
						name : 'updatetypeName2',
						triggerAction : 'all',
						store : new Ext.data.SimpleStore( {
							fields : ['id', 'value'],
							data : updatetypeName_data
						})
					}

    效果图如下:

 这样就不能达到预期隐藏的效果。

2 解决方法

  1. 在上述代码中在增加一个属性 hideLabel:true , 显示效果(个人觉的这个方法不是很好,后面如果控制在显示,好像没方法显示fieldLabel)

  

 2.在ComboBox 增加监听事件,来修改显示和隐藏fieldLabel以及ComboBox 控件

写了2个按钮测试 代码

handler : function(){
						var obj= moidfyForm.findById("moidfyForm_combo");
						if(obj){
							obj.getEl().up('.x-form-item').setDisplayed(false);
						}
					}

   实现fieldLabel隐藏,当然如果显示隐藏ComboBox用  hide() 和show()方法实现具体不介绍了

   点击显示隐藏按钮显示效果

  

 点击 显示按钮 显示效果



 最后的测试代码,见附件,大家可以下载下来参考一下

 

  • 大小: 9 KB
  • 大小: 7.8 KB
  • 大小: 8 KB
  • 大小: 8.9 KB
分享到:
评论
3 楼 zhangtaozhir 2013-05-21  
为什么隐藏后再显示,协议类型的控件长度比原来短了呢?
2 楼 zhicheng19830219 2012-05-17  
我弄了,弄不起呀!你那附件里面也找不到呀  能不能给那段代码完整的发给我看看  谢谢,13556833620@163.com
1 楼 ianl_zt 2011-04-18  
正好用到,谢谢。

相关推荐

Global site tag (gtag.js) - Google Analytics