一、在form中hide(),show()这些只是设置了输入框的隐藏与显示,并没有设置label标签的隐藏与显示。
//获得操作对旬
var field=Ext.getCmp("id');
//显示
showField(field);
//隐藏
hideField(field);
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
}
二、ExtJS中form表单的组件可以初始设置emptyText,如果想要动态改变,第一想法是获取到组件并设定emptyText,但是这时候你会发现emptyText并未改变,并不像value那样,emptyText是组件初始化的时候就加上去的,api中也并未提供设置emptyText的方法,那么怎么改变呢,看源码,在源码中发现,有一个方法很重要applyEmptyText,而这个方法是可以在外部调用的,经过测试也是有效的。
设定方法如下:
- Ext.getCmp('cmpId').emptyText='newEmptyText';
- Ext.getCmp('cmpId').applyEmptyText();