scnujie 发表于 2013-2-7 20:48:41

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

前几天搞了很久,查了很久的API也没搞定(因为API里面没有这种函数),反而是今天上它

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

位老兄:

   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);                              }                        }                }      });
页: [1]
查看完整版本: Ext中同时隐藏field和label的方法