EXT同时隐藏field和label
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); } } } });