|
前几天搞了很久,查了很久的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); } } } }); |
|